Zend_Form::什么时候应该在 View 中而不是在 Controller 中创建表单?
选项 1 - 在 Controller 中创建表单并传递给 View (通常使用)
Controller :
$form=new MyForm();
$this->view->form=$form;
View :
echo $this->form;
选项 2 - 直接在 View 中创建表单(对我来说更好看,因为表单是 View 的子部分)
View :
$form=new MyForm();
echo $this->form;
谢谢
最佳答案
简而言之:新观点。
你最终可能会:
- 为复杂任务创建 View 助手(并在 View 中调用助手
$this->getForm()
), - 或使用
Model::getForm()
- 或
service::getForm()
当您需要交叉操作表单时。
进一步说明:
因为在理想情况下, View 仅包含 HTML,以将逻辑与表示 (MVC) 分开。
使用 TDD 时,您为逻辑编写测试,而不是为 View 脚本编写测试,它们只是变量的外衣。
显示表单,不仅是表单本身,还包括检查是否已提交、检查验证错误、设置 flash messenger 变量等等。
这些任务太复杂了,无法让他们查看脚本。
作为分离逻辑和表示的一个很好的练习,我建议您看一下 PHPTAL模板语言,作为 ZF 中使用的模板语言,这是 native PHP 的一个很好的替代品。
关于zend-framework - Zend_Form::何时应该在 View 中而不是在 Controller 中创建表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3248134/