Comments (7)
So HasFunc would return a boolean true/false if a translation exists or not?
from go-i18n.
yes. I also have been thinking to a sort of CascadeTFunc(Ids []string, args ...interface{}) string
which has the advantage to better optimize the resources to find and identify the translation, see https://github.com/nicksnyder/go-i18n/blob/master/i18n/bundle/bundle.go#L224.
from go-i18n.
Couple questions:
Right now i m doing it by trying to translate each possibility until it returns non empty value which is considered as the translation to consume.
I d prefer to use a HasFunc(ID) to remove that test on empty response.
Tfunc should return the translation id, not an empty response if a translation doesn't exist. Can you share your code?
I also have been thinking to a sort of CascadeTFunc(Ids []string, args ...interface{}) string
If this function existed, would you still want/need HasFunc?
has the advantage to better optimize the resources to find and identify the translation
I don't quite see how there is a better way than checking the ids one by one in priority order.
from go-i18n.
1/ Right! mistake of mine.
func (f *FormTranslator) TError(formName string, fErr *FormValidationError) template.HTML {
ids := []string{
strings.ToLower(formName+"-"+fErr.Field+"-"+fErr.Tag),
strings.ToLower(fErr.Ns+"-"+fErr.Tag),
strings.ToLower(fErr.Field+"-"+fErr.Tag),
strings.ToLower("form_error-"+fErr.Tag),
}
for _,id := range ids {
m := f.T(id, fErr) //todo, escape fErr.Value.
if m!="" && m!=id {
return template.HTML(m)
}
}
return template.HTML(f.missingTranslation(formName, fErr))
}
2/ If this function existed, would you still want/need HasFunc?
no
3/ there is this code that would be redundant.
4/ btw, language detection could be handled into TfuncAndLanguage, no ?
from go-i18n.
I think this will be solved/obsolete with v2 proposed in #92
from go-i18n.
sure, thanks.
from go-i18n.
I just tagged 2.0.0.beta.1. Please start using it and report any issues that you have.
from go-i18n.
Related Issues (20)
- How to write a library module designed to be consumed by clients requiring i18n support?
- go get -u "github.com/nicksnyder/go-i18n/v2/i18n" # cd /root/go/GOCODE/src/github.com/nicksnyder/go-i18n; git pull --ff-only HOT 2
- Please explain how the user's current language is selected at runtime
- Is there are way to properly handle translation based on gender HOT 1
- Error handling is faulty HOT 3
- Setting the delimiters globally? HOT 2
- How to generate translations for the toml files HOT 3
- Upgrade golang.org/x/text v0.3.8 HOT 1
- `goi18n extract` doesn't seem to work for source file that use generics HOT 3
- Cound you export this function or when translation has error get the original value HOT 7
- Hook to commonly catch errors HOT 4
- Just a review
- Easy wrapper around this library HOT 1
- List fitting problem HOT 3
- merging new translation into existing translations omits the hashes
- [Question] Is there any way for reverse lookup in bundle? HOT 1
- Upgrade golang.org/x/text HOT 1
- Breaks on key description HOT 1
- Expose fields (or add access methods) of MessageNotFoundErr HOT 4
- Support template.Options for setting up missing key behavior HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from go-i18n.