Comments (4)
Hi @skyporter,
Actually, YAML files are almost always prefixed by one, or maybe a couple of keys, but not more.
So if you want to completely ignore a YAML file you can add something like this:
config.ignored_key_prefixes = [
'root_key_of_your_yaml_file.', # don't forget the trailing dot
]
If you happen to have a lot of first-level keys in your YAML file, you can still do something like this:
config.ignored_key_prefixes = YAML.load(File.read('config/locales/ignored.en.yml'))['en'].keys.collect { |k| "#{k}." }
# => ["admin.", "enumerize.", "activerecord."]
It's not "neat" but it should work too.
from rails.
Hi,
Thanks for the alternative suggestions, unfortunately not applicable to my case as I have a file that only contains backend translations.
For example, I have a Customer
model which should be only translated in only one language. I manage that by storing "customers keys" on a dedicated file backend-activerecord.fr.yml
:
fr:
activerecord:
models:
customer:
one: "Fiche client"
other: "Fiches clients"
and my generic activerecord.fr.yml
file contain all others keys:
fr:
activerecord:
models:
user: Utilisateur
...
As suggested, my only alternative with translation.io is to do that:
config.ignored_key_prefixes = [
"activerecord.models.customer.",
"activerecord.attributes.customer."
]
It would have been easier with the exclusion of the file.
from rails.
Now I understand why you need something like this.
That's not a very common YAML structure and I'm not sure we should add a new ignored_yaml_files
configuration for this.
Wouldn't it possible for you to add a small helper method to ignore some specific keys of you models?
Something like this:
def ignore_for_backend(models)
models.collect { |m| ["activerecord.models.#{m}.", "activerecord.attributes.#{m}."] }.flatten
end
config.ignored_key_prefixes = ignore_for_backend(['customer', 'projects'])
I'm going to leave that issue open.
We could consider adding this option if many users need it.
from rails.
Yes, I can probably code a script to automate this. Meanwhile, I can always add the keys one by one.
Thanks for your help.
from rails.
Related Issues (20)
- Special characters in translation HOT 2
- Isn't it possible to only use gettext? HOT 2
- Deprecation warning for #has_rdoc (Rubygems) HOT 2
- Do not add methods on Object HOT 3
- Empty hash in localization.en.yml
- Strings not get synced
- Unclear how to use custom locales in project HOT 5
- Crash on "rake translation:init" HOT 3
- getText method not translating text as supposed to after install and intialization HOT 7
- Deprecation warning on Rails 6 HOT 4
- Need a suggestion on how to keep the source pluralization clean HOT 2
- Error while running `translations:sync`: ArgumentError: comparison of Pathname with String failed HOT 3
- When disabling gettext in the initialiser gettext directory and files are still created HOT 3
- gettext strings missing after use of case statement in erb HOT 20
- A way to exclude translation keys HOT 3
- Ruby 3.1 compatibility (Psych 4 breaking change) HOT 7
- Match I18n fallbacks in GetText HOT 2
- Error when starting Pushion Passenger HOT 2
- Technical Demo video from readme not working HOT 1
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 rails.