【发布时间】:2016-12-12 10:38:47
【问题描述】:
我有一个表单和一个子表单,我想合并定义为默认值的约束值和根表单添加的论文。
我的子表单:
class DatesPeriodType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('start', DateType::class, [
'constraints' => [
new Date(),
]
])
->add('end', DateType::class, [
'constraints' => [
new Date(),
]
])
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver
->setDefault('error_bubbling', false)
->setDefault('constraints', [
new Callback([$this, 'validate']),
])
;
}
}
我使用新的约束选项将表单添加到根目录:
$builder
->add('judgmentPeriod', DatesPeriodType::class, [
'constraints' => [
new Valid(),
new Callback([
'callback' => [$this, 'datesAreEmpty'],
'groups' => ['insertionPeriod'],
]),
new Callback([
'callback' => [$this, 'validDates'],
'groups' => ['judgmentPeriod'],
]),
]
])
正如预期的那样,约束选项现在包含 3 个元素,并且回调约束未合并。 我试过这个解决方案:Default Options for symfony 2 forms are being overridden not merged 但似乎没有调用回调方法
谢谢,科伦丁
【问题讨论】:
标签: php symfony symfony-forms