我想创建两个父控制器:一个用于管理员,另一个用于用户站点。他们必须扩展一个常规的控制器类,但他们每个人都必须做不同的事情。如何在Codeigniter中创建两个父控制器?
1
A
回答
4
我写了一篇文章,告诉你如何做到这一点。
http://philsturgeon.co.uk/news/2010/02/CodeIgniter-Base-Classes-Keeping-it-DRY
你需要在你的config.php创建一个__autoload()函数或直接包含在类定义上面的基本控制器。
+0
链接已死,这是工作的http://philsturgeon.co.uk/blog/2010/02/CodeIgniter-Base-Classes-Keeping-it-DRY – 2013-01-10 06:53:26
0
这很简单。执行以下操作:
- 转到以下目录:
your_ci_app/application/core/
并创建一个名为MY_Controller.php
一个PHP文件(该文件将在您的顶级父类将驻留) 打开
MY_Controller.php
并添加多个类,像所以:class Admin_Parent extends CI_Controller { public function __construct() { parent::__construct(); } public function test() { var_dump("from Admin_Parent"); } } class User_Parent extends CI_Controller { public function __construct() { parent::__construct(); } public function test(){ var_dump("from User_Parent"); } }
这个目录
your_ci_app/application/controllers/
下创建你的孩子控制器。我将其称之为adminchild.php
打开
adminchild.php
并创建您的控制器代码,确保延长父类的名称,例如:class Adminchild extends Admin_Parent { function __construct() { parent::__construct(); } function test() { parent::test(); } }
相关问题
- 1. 在CodeIgniter控制器中创建函数
- 2. 如何在Codeigniter中为http:// localhost创建控制器?
- 3. 在codeigniter中创建一个动态控制器?
- 4. 如何使用两个控制器创建两个实例?使用两个控制器
- 5. 如何在单个视图控制器中创建两个多个UIPickerviews
- 6. 在一个控制器中创建两个动作 - Rails
- 7. 如何在Codeigniter中构造控制器?
- 8. iPhone:如何在一个NIB文件中创建两个控制器?
- 9. 在控制器中创建一个link_to
- 10. codeIgniter如何创建会话到登录控制器
- 11. 如何在codeigniter中的另一个控制器中调用控制器功能
- 12. MVC c#在控制器中创建两个表
- 13. Symfony3 - 在控制器中创建两个表的联接查询
- 14. 通过CMS在codeIgniter中创建动态控制器
- 15. 在CodeIgniter中自动创建视图和控制器
- 16. 如何在WinForm中动态创建UserControl到父级控制?
- 17. CodeIgniter在视图中加载两个控制器函数
- 18. 如何在父视图控制器中为动态创建的按钮创建一个处理程序?
- 19. 如何在Rails中的一个创建控制器方法内创建两个对象?
- 20. 如何在Spring MVC中创建一个主控制器
- 21. 如何在Rails中为单个表继承创建控制器?
- 22. Codeigniter多个控制器
- 23. 如何创建另一个控制器动作来在rails中创建对象?
- 24. 如何在CodeIgniter中切换到另一个控制器?
- 25. 如何在CodeIgniter中手动加载另一个控制器?
- 26. 如何从codeigniter中的另一个控制器调用控制器?
- 27. 创建控制器
- 28. 创建控制器
- 29. 创建控制器
- 30. 在Codeigniter中,将一个控制器扩展到另一个控制器中
怎么样一点的更多信息?你想做一些像mydomain.com/admin/do_this和mydoman.com/user/do_that吗? – ITroubs 2010-10-12 09:09:29
还是更多的条件扩展,你需要像在mydoman.com/iamhere/do_taht,其中控制器Iamhere做了一个条件扩展,所以如果它是一个管理员,它扩展了admin_controller,否则它扩展了user_controller? – ITroubs 2010-10-12 09:10:57