我想将翻译文件保存在目录中,例如:
/translations/admin/messages.en.xlf
/translations/admin/validation.en.xlf
/translations/client/messages.en.xlf
/translations/client/validation.en.xlf
以及如何在Controllers和Twig模板中使用这些翻译?
答案 0 :(得分:2)
翻译资源/文件名和位置
Symfony在以下内容中查找消息文件(即翻译) 默认位置:
- translations /目录(在项目的根目录);
- 任何捆绑包中的Resources / translations /目录。
此处列出的位置具有最高优先级。那 是,您可以覆盖任何 前两个目录。
覆盖机制在键级别起作用:仅覆盖键 需要在更高优先级的消息文件中列出。当没有钥匙时 在消息文件中找到后,翻译器将自动回退 到优先级较低的消息文件。
源 :https://symfony.com/doc/4.2/translation.html#translation-resource-file-names-and-locations
以及随后在同一页面/章节
您可以使用路径选项添加其他目录 配置:
config / packages / translation.yaml
framework: translator: paths: - '%kernel.project_dir%/translations/admin' - '%kernel.project_dir%/translations/client'
您可以将这些文件用作任何其他翻译文件,记住上面此处引用的覆盖机制