I am working on the feature to allow overriding site setting based on the
default_locale. @sam have talked with me that site setting based on environment is misleading. So I’d like to draw some proposals here to see which one is the best to go.
For the record, taking an example of the possible format:
min_search_term_length: client: true default: development: 2 default: 3 hidden: production: false development: true
As an aside, the overrides setting format will be:
min_search_term_length: client: true default: 3 locale_default: zh_CN: 1 hidden: false
hidden property proposal
hidden only accepts a
true value instead of dependending on env. I don’t think a good use to hide anything in the dev and test environment. There are only 4 cases under the
Rails.env params in the site setting
Rails.env params in the site setting and put them in another yaml file.
Related site settings should be put on a file and loaded with site setting. Can be
+The site setting file is clean.
+The site settings are centralized in a place so that it’s easy to follow.
I’d prefer this for clarity.
Put them into an initializer
Same pros as above. It’s not that obvious if they are put in
Merge them with
Instead of sending them outside the site setting files, we can have a
override params to put locale or env.
min_search_term_length: client: true default: 3 default_overrides: development: 2 zh_CN: 1
This style also looks good considering such overrides are not much.