我的 YML 文件失控了,我已经开始整理它们。在这一点上,我正在处理大约 50 种表格和 8 种语言。而那些只能增加。因此,如果我遵循推荐的重构方法,那么我最终会得到大约 50 个文件夹和每个文件夹中的 8 个文件。平均而言,每个表格都有大约 10-20 个与之相关的翻译。所以我想我会采用这种方法:
/config
/locales
en.yml # will contain default English translations
es.yml # will contain default Spanish translations
...... # etc. default files for each language
form_1.yml # translations for form 1 and related
form_2.yml # translations for form 2 and related
.......... # etc. for the different forms
form_50.yml # of course, will be using actual form names and not form_1 .. form_50 :)
像这样的语言文件en.yml
很明显它们将包含什么格式的翻译。但是像这样的文件form_1.yml
将包含以下内容:
en:
first_name: First Name
last_name: Last Name
es:
first_name: Nombre
last_name: Apellido
it:
first_name: Nome
last_name: Cognome
fr:
first_name: Prénom
last_name: Nom
...etc for more languages
或者,在同一个文件中以多种语言作为根。这将我需要维护的文件从 404 减少到 54,再加上同时查看所有语言以捕获任何遗漏的内容等优势。我已经对此进行了测试并且它有效。但在我全速推进这个实现之前,我想知道 Rails 社区对此有何看法。这种方法的任何陷阱。
谢谢。
编辑:请注意,当我说形式时,我指的不仅仅是字幕的翻译。它还将包括与表单相关的帮助消息、错误等。