您好我创建了两个模块第一个应用程序第二个评论。 想法是在任何应用程序操作(网站页面)中使用评论模块(Widget)。
申请模块 测试控制器
public function commentAction(){
//seting redirection for form
$this->getCommentService()->setRedirection('test/comment');
$list = $this->forward()->dispatch('comment_controrller', array('action' => 'list'));
$add = $this->forward()->dispatch('comment_controrller', array('action' => 'add'));
$view = new ViewModel();
$view->addChild($list, 'list');
$view->addChild($add, 'add');
return $view;
}
查看
评论模块 评论控制器
public function addAction()
{
$form = new CommentForm();
$form->get('submit')->setAttribute('value', 'Add');
$request = $this->getRequest();
if ($request->isPost()) {
$comment = new Comment();
$form->setInputFilter($comment ->getInputFilter());
$form->setData($request->getPost());
if ($form->isValid()) {
$comment ->exchangeArray($form->getData());
$this->getCommentTable()->saveComment($comment);
// Redirect to test controller in application module
return $this->redirect()->toRoute($this->getCommentService()->getRedirection());
}
}
return array('form' => $form);
}
public function listAction()
{
return new ViewModel(array(
$list=> 'test'
));
}
使用简单的变量(列表),所有工作正常,
我在尝试将表单重定向回测试控制器中的评论操作时遇到的问题
如果表单无效,我可以添加重定向到test / comment 但我将如何将所有验证错误传递给test / comment(form)
你能告诉我,如果我在逻辑上做的正确或在ZF2中我们有不同的方法来做小工具
答案 0 :(得分:0)
感谢您的帮助
来自weierophinney的回答
http://zend-framework-community.634137.n4.nabble.com/zf2-widget-base-app-logic-td4657457.html
这是我到目前为止所得到的: