我有一个事件控制器:
class Event extends CI_Controller{
public function index(){
}
public function foo(){
}
//Shouldn't be able to use this method unless logged in
public function bar(){
}
}
而且我正在尝试组织我的代码,使其相当整洁和直接。刚才我有一个名为 MY_Controller 的控制器,因此只有经过身份验证的用户才能访问任何扩展它的控制器的方法(edit_event()、add_event())。
但是,我的控制器中的某些方法需要未经身份验证的用户才能访问(例如 get_event())。
什么是处理这个的好方法?我应该制作两个完全独立的控制器还是从基本事件控制器扩展并添加经过身份验证的方法?
以前我有一个管理控制器来处理所有需要身份验证的方法,例如 add_user、delete_user、add_doc、delete_doc。但是它很快就被弄脏了,并且不容易更新或修改控制器(而且它很乱,似乎没有遵循良好的编程礼仪)。