我正在尝试翻译位于Resources/views/User/folder:中的小树枝模板中的标签
<label for="username">{% trans %}Username{% endtrans %} </label>
下面是我的login.ka.xliff文件的一部分,该文件位于我的项目中的"翻译"文件夹下:
<?xml version="1.0"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
<file source-language="en" datatype="plaintext" original="file.ext">
<body>
<trans-unit id="1">
<source>Username</source>
<target>მომხმარებელი</target>
</trans-unit>
</body>
</file>
</xliff>
这是我进入登录页面的路线:
login:
path: /login/{_locale}
defaults: { _controller: ExampleBundle:LogIn:login }
requirements:
_locale: en|ka
我有两个问题:
当我尝试用区域设置(比如ka)打开登录页面时,我会得到:
500内部服务器错误-Twig_Error_Runtime1链接的异常:无效资源异常»
我知道我可以使用$request->getLocale()从请求中获取区域设置;但是我如何指定登录页面应该使用login.ka.xliff文件进行翻译呢?
好的,我似乎没有提供足够的信息,所以这里是:
我把我的翻译文件放在Example:MyBundle:Resources:translations中(这就是我上面"在我的项目中"的意思)。
我在呈现登录视图时遇到异常,以下是我遇到的异常的完整版本:
"在ExampleMyBundle:User:login.html.twig的第32行呈现模板(")期间引发异常。
500内部服务器错误-Twig_Error_Runtime1链接的异常:InvalidResourceException»">
是的,每次我做更改时,我都会尝试清除缓存,但无济于事。
此外,我添加了我的login.ka.xliff文件的完整版本。
再次感谢!
您的xliff文件似乎无效——它应该是这样的:(包含xml命名空间、body…)。
<!-- messages.ka.xliff -->
<?xml version="1.0"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
<file source-language="en" datatype="plaintext" original="file.ext">
<body>
<trans-unit id="1">
<source>Username</source>
<target>მომხმარებელი</target>
</trans-unit>
</body>
</file>
</xliff>
如果您实际上没有在模板中指定其他翻译域,则该文件应命名为messages.ka.xliff
!
{{ 'Username'|trans({}, "login") }}
或者在模板中配置了其他默认翻译域。。。
{% trans_default_domain "login" %}
<trans-unit id="1">
<source>Username</source>
<target>მომხმარებელი</target>
</trans-unit>
是无效的xliff文件。