【问题标题】:symfony 4 form translate variable in twig includesymfony 4 form translate twig中的变量包括
【发布时间】:2019-05-27 10:08:52
【问题描述】:

我目前正在尝试在 Symfony/Twig 中为树枝模板的 include 语句中翻译一个字符串。 这是当前使用的未翻译代码:

{{ include('@BluelineUser/user/_form.html.twig', {
    'back_link': path('user_index'),
    'title' : 'Edit User: ' ~ user.username,
    'button_caption': 'Save'
}) }}

在我的表单中我这样输出:

{{ form_start(form) }}
    <h1>{{ title|trans }}</h1>
{{ form_end(form) }}

现在,如果我使用包含不同标题(其中没有变量)的包含,它可以正常工作。

将其添加到我的翻译文件中不会选择“编辑用户:”

<trans-unit id="edit.name2">
    <source>Edit User: </source>
    <target>Benutzer bearbeiten: </target>
</trans-unit>

知道如何翻译标题中的“编辑用户:”吗?我认为它因为变量而中断。 到目前为止,找不到任何关于如何在 include 语句中使其工作的示例。

【问题讨论】:

  • 我会试试{{ (title)|trans }}
  • 两者都试过了,但没有奏效。这是否可能是由于字符串被设置为“编辑用户:admin1@mail.com”之类的,因此无法识别翻译?将“编辑用户:admin1@mail.com”作为字符串添加到我的 xlif 会触发翻译。这不可能是解决方案。必须适用于所有用户名

标签: php symfony twig


【解决方案1】:

试着先翻译成这样:

{{ include('@BluelineUser/user/_form.html.twig', {
    'back_link': path('user_index'),
    'title' : ('Edit User: '|trans) ~ user.username,
    'button_caption': 'Save'
}) }}

【讨论】:

  • 工作就像一个魅力 - 不知道我能够添加这样的管道
猜你喜欢
  • 1970-01-01
  • 2017-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多