CakePHP - 集中控制器逻辑
使用 CakePHP,我发现我在控制器操作之间复制了一些代码。我有十几个左右的操作(属于不同的控制器),它们都需要运行相同的查询和 set()
相同的 10 个变量以在特定布局中使用。他们还需要以相同的方式处理任何错误并呈现错误页面。
我知道组件旨在集中控制器之间使用的逻辑,但就我而言,此逻辑需要访问控制器的 set()
和 render()
方法。对于这种情况,建议采取什么方法?
谢谢,布莱恩
Using CakePHP, I am finding that I'm duplicating some code between controller actions. I have a dozen or so actions (belonging to various controllers) that all need to run the same query and set()
the same 10 variables for the use in a particular layout. They also need to handle any errors in the same way and render an error page.
I know that components are intended to centralize logic used among controllers, but in my case, this logic needs access to the set()
and render()
methods of the controller. What is the suggested approach to this situation?
Thanks, Brian
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将逻辑放入您的控制器应从中扩展的 AppController 类中。
查看文档: http://book.cakephp.org/view/957/应用程序控制器
Put the logic in your AppController class which your controller should extend from.
Check out the docs: http://book.cakephp.org/view/957/The-App-Controller
最终在这个层上滚动了我自己的业务逻辑层。下面的例子。欢迎想法/评论。
Ended up rolling my own sort of business logic layer on this one. Example below. Thoughts/comments welcome.