我正在尝试使用 symfony 翻译。这是我的翻译.yml
framework:
default_locale: 'en'
translator:
paths:
- '%kernel.project_dir%/translations'
fallbacks: ['en']
Run Code Online (Sandbox Code Playgroud)
我在翻译目录中创建了 messages.en.yml 。
## YAML Template.
Home: Home
Admin: Admin
Dashboard: Dashboard
Vehicles: Vehicles
Id: Id
Run Code Online (Sandbox Code Playgroud)
但是当我尝试这样使用时,
{% trans %}Dashboard{% endtrans %}
Run Code Online (Sandbox Code Playgroud)
我收到此错误消息,
这些消息对于给定区域设置不可用,并且无法在后备区域设置中找到。将它们添加到翻译目录中以避免 Symfony 输出未翻译的内容。
区域设置由两部分(语言和国家/地区)和下划线组成:例如。it_IT 或 en_EN
例如,瑞士有 3 种口语:
您的翻译文件的文件名应类似于:
每个翻译文件中的翻译密钥应该是唯一的、以点分隔的且相同的。首先是翻译键,冒号之后是翻译的内容。
# messages.it_IT.yml
navigation.home: Clicca per casa
navigation.help: Clicca per aiuto
# messages.en_EN.yml
navigation.home: Click for home
navigation.help: Click for help
Run Code Online (Sandbox Code Playgroud)
现在您可以在应用程序中使用导航键,一个好的 IDE 将通过选择它们来帮助您。当应用程序的不同部分使用不同的文件时,您必须在 twig 中对它们进行寻址,如下所示:
{{ 'navigation.home'|trans({}, 'application') }}
{{ 'navigation.help'|trans({}, 'application') }}
<div class="error-message">
The following error occured: {{ 'error.login'|trans({}, 'messages') }}
</div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6695 次 |
| 最近记录: |