【问题标题】:Translated placeholder value not pulling through to Symfony 4 form field翻译后的占位符值未拉入 Symfony 4 表单字段
【发布时间】:2022-01-01 14:35:09
【问题描述】:
{% trans_default_domain "admin" %}

{% form_theme leadForm _self %}

{{ form_row(leadForm.phonenumber) }}

我的表单域定义为:

    $builder
        ->add('phonenumber', TextType::class, [
            'label' => false, 
            'required' => true,
            'constraints' => [
                new NotBlank(),
            ],
            'attr' => [
                'placeholder' => 'change.lead_form.placeholders.phonenumber'
            ]
        ])

我正在设置翻译域:

/**
 * @param OptionsResolver $resolver
 */
public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults([
        'translation_domain' => 'admin',
    ]);
}

admin.en.yml 包括以下内容:

change:
    lead_form:
        placeholders:
            phonenumber: Required

但是,当我在表单定义中设置占位符时,它不会显示。如果我在 Twig 中使用attr 属性,我可以将其拉入,但我宁愿在表单定义中这样做。

【问题讨论】:

    标签: php yaml twig symfony4 symfony-forms


    【解决方案1】:

    我在the documentation 中显然错过了这一点,但看起来“attr”在最新版本的 Symfony 中被删除了。

    这将在 Symfony 4 中工作。

            $builder
                ->add('phonenumber', TextType::class, [
                    'label' => false,
                    'required' => true,
                    'constraints' => [
                        new NotBlank(),
                    ],
                    'placeholder' => 'change.lead_form.placeholders.phonenumber'
                ])
    

    【讨论】:

      猜你喜欢
      • 2019-09-02
      • 1970-01-01
      • 2020-04-09
      • 2021-02-08
      • 1970-01-01
      • 2012-01-12
      • 2014-05-02
      • 2017-10-20
      • 1970-01-01
      相关资源
      最近更新 更多