我想創建兩個父控制器:一個用於管理員,另一個用於用戶站點。他們必須擴展一個常規的控制器類,但他們每個人都必須做不同的事情。如何在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