最好放置用于构建Zend_Forms的代码?
我曾经把这个逻辑放在我的控制器中,但在我需要在不同的地方使用相同的表格之后,我就离开了。这意味着我必须在不同的控制器中复制表单的创建。
所以我将表单创建代码移动到了我的模型中。这看起来是否合适,对我有用。或者是否有我遗失的东西,他们实际上应该去别的地方?
答案 0 :(得分:5)
我通常将表单构建代码放在单独的文件中,每个表单一个文件 另外,我配置Resource Autoloader,以便我可以在控制器中加载表单。
应用/表格/ login.php中
<?php
class Form_Login extends Zend_Form
{
public function init()
{
$this->addElement('text', 'username', array(
'filters' => array('StringTrim', 'StringToLower'),
'required' => true,
'label' => 'Username:',
));
$this->addElement('password', 'password', array(
'filters' => array('StringTrim'),
'required' => true,
'label' => 'Password:',
));
$this->addElement('submit', 'login', array(
'ignore' => true,
'label' => 'Submit',
));
}
}
在我的控制器中:
$loginForm = new Form_Login();