【问题标题】:CakePHP Admin Panel and Front EndCakePHP 管理面板和前端
【发布时间】:2012-12-30 10:12:08
【问题描述】:

我是 CakePHP 的新手。这些天来,我创建了一个类似于 hotscripts 的应用程序。我需要一个站点管理员的管理面板来为公众访问者添加新文章/应用程序和前端。

我正在为此寻找解决方案。我已经将 router_prefix 设置为管理员。例如,在 CategoriesController 中。

public function admin_add() {

}

public function view($id) {
}

据我所知,这是解决方案之一。在 CategoriesController 中,我设置了

$this->Auth->allow('view');

以便访问者无需登录即可访问此页面。我的问题是,这真的是管理员和前端产品的解决方案吗?

提前致谢!

        public $components = array(
        'Auth' => array(
            'authorize' => 'controller',
            'loginRedirect' => array(
                'admin' => true,
                'controller' => 'dashboards',
                'action' => 'index',
            ),
            'loginError' => 'Invalid account specified',
            'authError' => 'No Permission',

        ),

谢谢范范!!!我按照您的建议将此代码添加到 AppController。我现在不知道 loginRedirect 中的 admin param 是什么意思?你能给我解释一下吗?

【问题讨论】:

    标签: cakephp


    【解决方案1】:
    is this really a solution for admin and front product? 
    

    是的,您必须在 beforeFilter 中输入 $this->Auth->allow('view');,并记得调用应用程序控制器 beforeFilter(很可能您在那里设置了 Auth 设置)。所以它看起来像这样:

    function beforeFilter() {
        parent::beforeFilter();
        $this->Auth->allow('view');
    }
    

    编辑:'admin' 有前缀:表示登录后,它会重定向到 yoursite.com/admin/dashboards。如果您不设置 admin=>true,它将重定向到 yoursite.com/dashboards。使用前缀进行基于组的访问控制只是一种常见的做法。 (稍后,如果您有超过 1 组的登录用户:admin、sub-admin 等,您需要设置 Auth 来限制访问级别;但这很简单)。

    【讨论】:

      【解决方案2】:

      我建议您查看Croogo。这是一个基于 CakePHP 构建的 CMS。

      【讨论】:

      • 谢谢。我已经下载了。太棒了!
      猜你喜欢
      • 2010-12-23
      • 1970-01-01
      • 1970-01-01
      • 2016-03-19
      • 1970-01-01
      • 2015-12-17
      • 1970-01-01
      • 2014-05-16
      • 2017-01-18
      相关资源
      最近更新 更多