Cakephp:路由和默认视图

时间:2010-12-26 14:24:51

标签: cakephp

我目前正在尝试将管理模式添加到我的cakephp网站。

我按照网上的教程添加了路由前缀:

Configure::write('Routing.prefixes', array('admin'));

然后我实现了登录和注销功能。

我将admin_view.ctp和admin_index.ctp添加到我想限制访问的模型中。因此,我删除了view.ctp和index.ctp,并期望只有管理员可以使用以下方式查看模型:

http://xxxx/model/admin/index

但是当我进入

http://xxxx/model/index

出现了我无法禁用的默认视图(它允许模型操作)。有没有标准的方法来禁用所有这些默认视图,还是我必须创建一个只显示错误消息的index.ctp和view.ctp?

2 个答案:

答案 0 :(得分:2)

如果您想禁止某些操作,则需要设置ACL,其描述为here。对于身份验证,在控制器中你需要这样的东西:

class SomethingsController extends AppController
{
var $components = array('Auth');

//this will allow all users access to the index
//and view methods ( but not any other)
    function beforeFilter() {
            $this->Auth->allow('index','view');
    }

// other actions
}

希望这有帮助。

答案 1 :(得分:0)

删除默认控制器方法:function index(), view(), add(), edit() and delete()。删除* .ctp模板是不够的。