Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony2-“;无效的资源异常“;翻译细枝模板时_Symfony_Twig - Fatal编程技术网

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>
我有两个问题:

  • 当我尝试打开带有区域设置(比如ka)的登录页面时,我得到:

    500内部服务器错误-细枝错误\u运行时 1链接例外: InvalidResourceException»

  • 我知道我可以使用$request->getLocale()从请求中获取区域设置;但如何指定登录页面应使用login.ka.xliff文件进行翻译

    好的,我似乎没有提供足够的信息,所以这里是:

    我将我的翻译文件放在示例:MyBundle:Resources:translations中(这就是我在上面“我的项目”中的意思)

    我在呈现登录视图时遇到异常,以下是我遇到的异常的完整版本:

    在第32行的ExampleMyBundle:User:login.html.twig中呈现模板(“”)时引发异常

    500内部服务器错误-细枝错误\u运行时 1链接例外: InvalidResourceException»”

    是的,每次做更改时,我都会尝试清除缓存,但没有帮助

    此外,我还添加了login.ka.xliff文件的完整版本

    再次感谢


  • 您的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>