2016-09-02 21 views
1

私はCakePHP(最新)のブックマークのチュートリアル(パート2 - 認証)に従っています。CakePHP AppController奇妙な振る舞い

'authorize' => 'Controller', 

[ユーザーリストやタグのリストのいずれかにアクセスできることから私を停止します。私はAppController.phpファイルに以下を追加することに着くまで、すべてが正常に起こっています。私はブックマークリストしか見ることができません。私はチュートリアルを2回行ってきました。初めて私はすべてのコードをタイプダウンし、フレームワークの完全な再インストールを行い、コードをペーストし、各ペーストでテストしました。この行がアプリケーションを破壊するようです。完全に制御方法は、このように見えることになっている。

public function initialize() 
{ 
$this->loadComponent('Flash'); 
$this->loadComponent('Auth', [ 
    'authorize'=> 'Controller', //added this line - it breaks stuff 
    'authenticate' => [ 
     'Form' => [ 
      'fields' => [ 
       'username' => 'email', 
       'password' => 'password' 
      ] 
     ] 
    ], 
    'loginAction' => [ 
     'controller' => 'Users', 
     'action' => 'login' 
    ], 
    'unauthorizedRedirect' => $this->referer() // added this line - not sure if it breaks stuff on its own 
]); 

// Allow the display action so our pages controller 
// continues to work. 
$this->Auth->allow(['display']); 

}

、それは例を破るのinitialize()メソッドの「許可」と「unauthorizedRedirect」値です。誰もこの振る舞いに出くわしましたか? Firefoxでは、ページが正しくリダイレ​​クトされないというページが表示されます。これらの2行をコメントアウトして、すべて正常に動作します。

+1

のようにコードを追加します。 –

+1

はい、@PruthvirajChudasamaが正しいです。あなたのUserControllerの名前を与える必要があります。 –

答えて

0

これは、アプリケーションの任意のURLにアクセスするためにログインする必要があることを意味します。ログインせずにURLにアクセスしたい場合は、$this->Auth->allow('index');