2011-10-02 2 views
0

CakePHP를 처음 사용합니다. 요즘에는 핫 스크립트와 같은 응용 프로그램을 만듭니다. 사이트 관리자가 새로운 기사/앱과 일반 방문자를위한 프런트 엔드를 추가 할 수있는 관리자 패널이 필요합니다.CakePHP 관리자 패널 및 프런트 엔드

나는 이것을위한 해결책을 찾고있다. 나는 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', 

     ), 

Anh Pham !!! 나는 당신의 제안을 따르고이 코드를 AppController에 추가했다. loginRedirect에서 admin param means가 무엇인지 모르겠습니다. 이거 설명해 줄래?

답변

2
is this really a solution for admin and front product? 

예, 당신은으로, beforeFilter에 $this->Auth->allow('view');을 넣어 가지고, 또한 (가장 가능성이 당신이 거기 인증 설정을 설정)으로, beforeFilter 응용 프로그램 컨트롤러를 호출하는 기억합니다. 그래서 다음과 같이합니다 :

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

편집 다음 '관리'는 접두사가있다 : 그것은 로그인 후, 그것은 yoursite.com/admin/dashboards로 리디렉션됩니다 것을 의미합니다. admin => true로 설정하지 않으면 yoursite.com/dashboards로 리디렉션됩니다. 그룹 기반 액세스 제어를 위해 prefix를 사용하는 것은 일반적인 관행입니다. 나중에 로그인 한 사용자 그룹이 두 명 이상인 경우 (예 : 관리자, 하위 관리자 등) 액세스 수준을 제한하기 위해 Auth를 설정해야하지만 매우 간단합니다.

+0

고맙습니다. 에디션 에디션의 또 다른 질문입니다. – Ruiwant

0

나는 당신이 Croogo을 들여다 볼 것을 제안합니다. CakePHP를 기반으로 구축 된 CMS입니다.

+0

감사합니다. 나는 그것을 다운로드했다. 굉장해! – Ruiwant

관련 문제