我一直在使用zend框架2开发一个网站,我使用zend创建了一个表单,并在其输入中添加了一些过滤器,但似乎它们无法正常工作。我做了一些研究和几乎所有我发现的例子,把过滤器放在模型方法中,我不太欣赏。所以我的问题是如何正确设置Form类中的过滤器和验证器?
这是我定义表单类的方式:
class AddPizzaForm extends Form
{
public function __construct()
{
parent::__construct('addpizzaform');
$this->add(array(
'name' => 'pizza_name',
'type' => 'text',
'required' => true,
'filters' => array('StringTrim', 'StringToLower'),
'options' => array('label' => 'Pizza name')));
$this->add(array(
'name' => 'ingredients',
'type' => 'textarea',
'options' => array('label' => 'Ingredients')));
$this->add(array(
'name' => 'small_price',
'type' => 'text',
'options' => array('label' => 'Small price')));
$this->add(array(
'name' => 'big_price',
'type' => 'text',
'options' => array('label' => 'Big price')));
$this->add(array(
'name' => 'family_price',
'type' => 'text',
'options' => array('label' => 'Family price')));
$this->add(array(
'name' => 'party_price',
'type' => 'text',
'options' => array('label' => 'Party price')));
$this->add(array(
'name' => 'add_pizza',
'type' => 'submit',
'attributes' => array(
'value' => 'Add New Pizza',
'id' => 'submitbutton')));
}
}
非常感谢你。