【问题标题】:Translate symfony 2 entity form values翻译 symfony 2 实体表单值
【发布时间】:2012-12-20 02:54:45
【问题描述】:

我需要在我的 symfony 2 表单的选择字段中翻译实体的值。我知道正常的选择字段是自动翻译的。但我想翻译来自我这样指定的实体的选择:

$builder->add('status', 'entity', array(
    'class' => 'Acme\DemoBundle\Entity\Status',
    'translation_domain' => 'AcmeDemoBundle'
));

假设我有一个实体,它将返回 old status 的值,我使用 __toString 函数实现了它。根据这个消息文件,它应该在我的表单中生成的选择列表中给我new status。

<?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>old status</source>
                <target>new status</target>
            </trans-unit>
        </body>
    </file>
</xliff>

我的问题是:这可能吗?如果是,我错过了什么?

提示:例如,如果我只翻译 twig 中的单个文本,则翻译工作。

【问题讨论】:

  • 你确定你使用的是 Symfony 2.1.x 吗?翻译域在 Symfony 2.0.x 中不存在。
  • 是的,我确定。没有显示错误,如果我将属性更改为不存在的东西,symfony 会直接显示错误。
  • 在没有translation_domain 的情况下在另一种表单类型中使用相同的实体效果很好。我从原始类型中删除了该属性,它现在也可以使用。看来,我只是拼错了域。

标签: php forms symfony internationalization


【解决方案1】:
猜你喜欢
  • 1970-01-01
  • 2015-04-09
  • 2018-01-20
  • 2015-07-28
  • 2014-12-22
  • 1970-01-01
  • 1970-01-01
  • 2017-11-24
  • 2020-09-29
相关资源
最近更新 更多