Symfony2-“;无效的资源异常“;翻译细枝模板时
我正在尝试转换位于参考资料/视图/用户/文件夹中的我的小枝模板中的标签:Symfony2-“;无效的资源异常“;翻译细枝模板时,symfony,twig,Symfony,Twig,我正在尝试转换位于参考资料/视图/用户/文件夹中的我的小枝模板中的标签: <label for="username">{% trans %}Username{% endtrans %} </label> 我有两个问题: 当我尝试打开带有区域设置(比如ka)的登录页面时,我得到: 500内部服务器错误-细枝错误\u运行时 1链接例外: InvalidResourceException» 我知道我可以使用$request->getLocale()从请求中获取区域设置;但如何
<label for="username">{% trans %}Username{% endtrans %} </label>
我有两个问题:
您的xliff文件似乎无效-它应该如下所示:(包含xml名称空间,body,…) 。。。或者在模板中配置了不同的默认翻译域
{% trans_default_domain "login" %}
用户名
მომხმარებელი
。。。是无效的xliff文件 您使用哪个
translations
文件夹存储翻译文件。。。在项目根目录中,应用程序/资源?请将这些信息添加到问题中-这是诊断问题所需的重要信息。。。并清除缓存(顺便说一句:)进一步添加异常消息的相关部分-我们需要查看引发异常的位置。异常名称本身并不能让我们找到问题。感谢您的回复:)我在问题中添加了更多信息。希望这能让错误变得更清楚。您是否添加了名为“login”的默认域?如果没有-文件名是错误的,但这可能不是唯一的问题。请在我的回答中学习有关翻译领域的食谱文章。第32行实际上是{%trans%}用户名{%endtrans%}
行-请确认。你清除缓存了吗?如果改用{{'Username'| trans}}
会发生什么?因此,我尝试在模板中指定默认域“{%trans\u default\u domain”login“%}”,尽管它毫无例外地呈现,但它不会转换标签。每次我都会清除缓存,并仔细阅读翻译文档:(是的,这是发生错误的行号(32)我在模板中使用了默认的{%trans_default_domain“login”%},但它不会翻译内容。
login:
path: /login/{_locale}
defaults: { _controller: ExampleBundle:LogIn:login }
requirements:
_locale: en|ka
<!-- 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>
{{ 'Username'|trans({}, "login") }}
{% trans_default_domain "login" %}
<trans-unit id="1">
<source>Username</source>
<target>მომხმარებელი</target>
</trans-unit>