は、明示的にtranslation_domain
を設定してください:
$builder->add('subject', TextType::class, array(
// ...
'translation_domain' => 'messages',
))
あなたはまたにこのメソッドを追加することによって、全体FormType
のためにそれを行うことができます:それは動作しない場合
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'translation_domain' => 'messages'
));
}
、あなたのFormType
にtranslator
を登録して登録してください。as a service:
# services.yml
services:
app.form.type.abuse:
class: AppBundle\Form\Type\AbuseType
arguments: [ "@translator" ]
tags:
- { name: form.type }
コールを直接翻訳者:
use Symfony\Component\Translation\TranslatorInterface;
class AbuseType extends AbstractType
{
public function __construct(TranslatorInterface $translator)
{
$this->translator = $translator;
}
// ...
$builder->add('subject', TextType::class, array(
'label' => 'label.subject',
'data' => $this->translator->trans('report_abuse', array(), 'messages'),
'disabled' => 'true',
))
}
翻訳ファイルの1つに 'report_abuse'を追加しましたか?入力フィールド 'subject 'に表示される値を変換したいと思っていますか? – Baig
はいxlfファイルにreport_abuseを追加しました。はい、フィールドに表示されている値を変換したかったので、オブジェクトに挿入する前に値を変換するようになりました。私は以下の質問に答えました。 – Laurent