我正在尝试在表单中使用 cascade_validation,但它不起作用。我有一个实体 Formulario,其中包含一系列问题,因此我以这种方式将问题表单插入到 Formulario 表单中:
class FormularioType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('nombre')
->add('preguntasPonderadas', 'collection', array(
'type' => new QuestionType(),
'allow_add'=>true,
'allow_delete'=>true,
'cascade_validation'=>true,
))
;
}
}
实体问题有一个这样的断言:
class Question
{
/**
* @var integer
*
* @Assert\Range(
* min = 1,
* max = 5,
* minMessage = "El valor mínimo es 1",
* maxMessage = "El valor máximo es 5"
* )
*
* @ORM\Column(name="peso", type="integer")
*
*/
private $peso;
}
问题是,如果我从问题表单创建问题,问题实体的范围断言有效,但如果我在 Formulario 表单中创建问题,它不起作用并允许超出范围的数字。空字段约束确实有效,无效类型也有效(例如,如果我写一封信),即使不使用 cascade_validation。
问题是范围约束不适用于 Formulario 表单。
任何想法??非常感谢!!!!