【发布时间】:2017-11-16 11:57:54
【问题描述】:
我想用这样的组合模式创建表单: https://symfony.com/doc/current/form/inherit_data_option.html
我使用 Symfony 3。
它正在工作。我有像单个对象一样的每个元素并添加它。
但最后我的表单元素名称具有类似的名称
form[subform][element]
如何在名称属性中制作没有子表单的扁平结构?
use AppBundle\Base\Form\NickType;
use AppBundle\Base\Form\MailType;
use AppBundle\Base\Form\PassType;
use AppBundle\Base\Form\UserType;
class RegisterType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('nick', NickType::class)
->add('mail', MailType::class)
->add('password', PassType::class)
->add('repeat_password', PassType::class)
(etc...)
单元素
class NickType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('nick', TextType::class);
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'inherit_data' => true
));
}
}
【问题讨论】:
-
请出示您的FormType。
-
@StephanVierkant 我更新了代码。谢谢你的回复。
标签: symfony symfony-forms