CI控制器中的冗余实现
问题描述:
我想问你关于博客首页的最佳实践。 我想用CodeIgniter框架构建博客应用程序。我有2个类型的页面(头版和管理页面)的CI控制器中的冗余实现
认为我有几个控制器在我的头版(家中,后,页面和链接)。默认情况下,我有包含所有这些控制器的浏览器:header.php,footer.php,sidebar.php。在我的头版控制器中,我必须实现选择的类别,最近的评论,最近发布的内容,链接等等。在侧边栏中,我总是显示类别,最新评论,最近发布的内容,链接和存档。并存档。假设我在所有控制器的构造函数中实现。
__construct() {
//data['categories'] = CategoryModel->getlist
//data['recent_posts] = PostModel->get_recent_post
//etc
你可以建议我,在这里我必须把这个方法,所以我不能执行所有控制器的这种方法。
感谢
答
你可以写一个基地控制器,其他的人从
class AppStartup extends Controller {
function __construct() {
// whatever you need
}
}
继承然后
class Home extends AppStartup {
// ....
}
你也可以开始接受一些给你答案的,或人们不会很乐意帮助你。
答
要做到这一点,最好的方法是创建一个MY_Controller和使用$这 - >数据,而不是$的数据。这意味着所有的控制器都将从MY_Controller运行(只要你明确告诉你的控制器从它继承)。
http://codeigniter.com/wiki/MY_Controller_-_how_to_extend_the_CI_Controller/