gpt4 book ai didi

forms - Symfony2 表单重复元素自定义标签

转载 作者:行者123 更新时间:2023-12-04 01:32:45 24 4
gpt4 key购买 nike

我正在使用 Symfony2 和 CraueFormFlowBundle创建一个多步骤的表单。除了我重复的电子邮件字段外,一切都很顺利。为了我,我无法找到如何放置我想要的标签。我自己在 Twig View 中使用 form_widget(...) 渲染表单并编写标签。我按照客户的要求定位一切。现在,他希望看到电子邮件标签为“电子邮件*”和“确认电子邮件*”(星号,因为它们是必需的)。如果我使用 form_row() 呈现重复的元素,错误将不再显示在表单上(但我可以控制标签,snap)。显示错误的唯一方法(不要问我为什么)是使用 form_widget(form.giver.email) 指向整个重复元素对象。问题是,使用 form_widget 呈现整个重复元素使我无法控制标签。

通过渲染整个重复元素,它使用“first_name”和“second_name”参数打印标签。出于显而易见的原因,我不能在这些参数中使用大写字母、破折号或星号。如果我尝试在选项数组中设置标签,则该标签将按照 Symfony2 文档中的描述传递给两个字段...

我尝试在 Twig 中使用“.first”和“.second”进行打印,但我收到一个错误,指出这些在 FormView 中不存在。

现在我想要的是能够分别设置两个标签!这是我当前的代码:

$builder->add('email', 'repeated', array(
'type' => 'email',
'first_name' => 'email',
'second_name' => 'confirm',
'invalid_message' => 'The e-mails you provided did not match.',
'error_bubbling' => false
));

这会将标签打印为“电子邮件”和“确认”。这是使用“选项”数组:
$builder->add('email', 'repeated', array(
'type' => 'email',
'first_name' => 'email',
'second_name' => 'confirm',
'invalid_message' => 'The e-mails you provided did not match.',
'error_bubbling' => false,
'options' => array(
'label' => "TESTTT"
),
));

这将在两个重复字段中打印“TESTTT”标签。我能做些什么吗?如上所述,如果电子邮件不相等或为空,则使用 form_row() 不会在表单提交时显示错误。所以我只能使用 form_widget() 并渲染整个重复的对象。

在此先感谢您的时间。

最佳答案


$formView->getChild('passwordFieldName')->getChild('second')->set('label', 'Enter password again');

关于forms - Symfony2 表单重复元素自定义标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8012718/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com