【发布时间】:2021-11-12 12:14:08
【问题描述】:
- 我已经使用 cli 启动了一个新的 Symfony 5.3 应用程序。
- 已关注https://symfony.com/doc/current/translation.html#configuration
- 我在控制器中创建了一个简单的 Twig 模板:
{% trans with {'%name%': 'Hans'} %}Hello %name%{% endtrans %}
{{ 'Hello filter %name%'|trans({'%name%': 'Hans'}) }}
这会产生:
Hello Hans
Hello filter Hans
当我这样做时
php bin/console translation:update --force en
翻译文件已创建
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file source-language="en" target-language="en" datatype="plaintext" original="file.ext">
<header>
<tool tool-id="symfony" tool-name="Symfony"/>
</header>
<body>
<trans-unit id="SzX5ua9" resname="Hello %name%">
<source>Hello %name%</source>
<target>__Hello %name%</target>
</trans-unit>
<trans-unit id="6l2Ebbm" resname="Hello filter %name%">
<source>Hello filter %name%</source>
<target>__Hello filter %name%</target>
</trans-unit>
</body>
</file>
</xliff>
当我刷新网站时 - 变量不再被替换:
__Hello %name%
__Hello filter %name%
我做错了什么?如何转储翻译并保留变量替换?我需要修改翻译文件才能完成这项工作吗?
【问题讨论】: