我无法验证表单Collection元素,以下是我的fieldset的样子:
class ProductFieldset extends Fieldset implements InputFilterProviderInterface
{
public function init()
{
$this->setName('product');
$this->add(array(
'name' => 'features',
'type' => 'Collection',
'options' => array(
'label' => 'Características do produto',
'count' => 0,
'should_create_template' => true,
'allow_add' => true,
'target_element' => array(
'type' => 'Text',
),
),
));
}
public function getInputFilterSpecification()
{
return array(
'features' => array(
'required' => false,
'filters' => array(
array('name' => 'StringTrim'),
),
'validators' => array(
array(
'name' => 'StringLength',
'options' => array(
'min' => 10,
),
),
),
),
);
}
}
如果我添加一个元素并将其留空,则验证通过,但不应该,因为StringLength
需要至少10个字符。我必须遗漏一些东西,如果有人能告诉我我做错了什么,我会非常感激。