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,只显示错误消息?
如果您想禁止某些操作,则需要设置ACL,这在此处介绍。 而对于身份验证,在你的控制器中你需要这样的东西:
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
}
希望这可以帮助。
删除默认的控制器方法: function index(), view(), add(), edit() and delete()
。 删除* .ctp模板是不够的。
上一篇: Cakephp: Routing and default views
下一篇: Tweets containing url are not returned in search result