我有一段代码在DefaultController.php
中的每个控制器中重复,这让我很烦恼。我可以把它放在一个地方,而不是复制 - 在我添加的每个新控制器中过去它?Symfony2:在每个新控制器中重复代码的解决方案
2
A
回答
3
如果代码应该在每个控制器动作的开始处运行,我建议编写一个处理程序KernelEventkernel.controller
将代码分配给控制器之前触发的事件。
如果代码应该在动作代码的某处运行,您可以为create your own event并为其创建一个处理程序。您可以将控制器和所有需要的数据附加到自定义事件对象。
0
我有完全一样的东西。
在控制器的每一个动作管理权限,我打电话服务
$this->permissions =$this->get('vendor.permissions')->checkPermission('BundleName','Profil','select',$this);
相关问题
- 1. 解决方案重复代码
- 2. 在Visual Studio解决方案中重新链接Xaml和代码
- 3. 在解决方案中迭代控制器
- 4. 轨在控制器的解决方法每种方法重置
- 5. 重复解决方案
- 6. 从源代码控制中删除解决方案目录
- 7. jQuery删除重复的代码 - 更简单的解决方案?
- 8. 更好的解决方案重复代码,需要优雅
- 9. coffeescript和重复的代码。有解决方案吗?
- 10. 用Symfony2控制器重构代码
- 11. 适当的源代码控制解决方案
- 12. Oracle/ASP.NET环境的最佳源代码控制解决方案?
- 13. 多环境源代码控制的任何解决方案?
- 14. 有没有解决方案来控制重复属性?
- 15. JQuery - 重新排列对象 - 最短的代码解决方案
- 16. viewContentLoaded - 没有每个控制器的代码重复 - AngularJS
- 17. 控制器中的重复代码
- 18. 无需为每个视图解决方案单独控制器或操作 - 了解代码
- 19. 添加解决方案到源代码控制
- 20. 失踪:解决方案添加到源代码控制
- 21. MVC - 基础解决方案VS分支源代码控制
- 22. 重构解决方案文件夹到新解决方案
- 23. DeploymentItem无法复制目录时,则每个解决方案
- 24. VBA代码重复解决
- 25. 重复记录的SQL解决方案
- 26. 具有共享库的多个项目/解决方案的源代码控制
- 27. 代码重复 - Symfony2
- 28. 迭代解决方案中的递归解决方案
- 29. 在解决方案中移动web api控制器
- 30. 签入解决方案文件后,我可以将解决方案绑定到TFS源代码控制吗?
好吧Chiborg,我得弄清楚,感谢您的帮助。 – 2012-04-11 09:40:52
我可能不理解这个问题,但如果你只是想避免复制/粘贴代码,那么让DefaultController扩展Symfony控制器,然后让你的各个控制器扩展DefaultController。但我猜测(正如@chiborg所说)你确实想要执行一些重复的代码。 – Cerad 2012-04-11 13:04:22
那么,我需要的是获得会话并将其发送到模板,这是每个控制器中的重复代码: '$ session = $ this-> get('session'); $ foo = $ session-> get('uid');返回$ this-> render('template',array('session'=> $ foo));''除非有另外一种方法获取并发送会话到模板:)。谢谢。 – 2012-04-11 13:18:55