我有一个包含几个字段的 zend 表单。
验证表单后,我想隐藏表单并显示成功消息。
有很多方法可以做到这一点 - 重定向到另一个 Controller 操作、渲染另一个 View 脚本、在 View 助手/ session 中标记等等。
这有什么最佳实践吗?
谢谢。
最佳答案
我认为人们经常使用其他两个答案中发布的解决方案,该解决方案检查表单是否已发布且有效,然后将消息传递到 View 。
我认为这个方法还可以,但不是最佳的。它将消息与工作流程紧密联系在一起,并产生了代码重复的需要。这是没有必要的。 IMO 消息传递应从工作流程中剔除,并使用可重用组件进行处理。恰好,Zend Framework 为我们提供了当时必要的工具——flashMessenger。
所以,我开始做的是向 flashMessenger 发送一条消息,每当我需要一条消息时,它将在下一次往返后自动显示,独立于表单操作,并且不需要额外的标记和 if 语句。
有关 flashMessenger 的示例和资源:
- http://blog.noumenal.co.uk/2009/08/using-zend-framework-flashmessenger.html
- Working with Zend Framework FlashMessenger and jQuery UI state classes
FlashMessenger 与通过这些链接找到的附加 View 助手配合使用效果最佳!
关于php - Zend - 隐藏表单并显示消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7673673/