0

これが私が達成したいことです:製品をクリック->登録->チェックアウト製品を選択するページがあり、すべての製品リンクがcheckoutコントローラーに移動し、URLを介してパラメーターを渡します。例:domain.com/checkout/product-name

ただし、チェックアウトコントローラーを使用する前にユーザーにログインしてもらいたいので、当然、チェックアウトコントローラーので拒否し$this->Auth->deny('index')ましたbeforeFilter()。これで、チェックアウトコントローラにアクセスしようとすると、ログインページにリダイレクトされます。代わりに登録ページに移動させる方法はありますか?

4

1 に答える 1

1

loginAction$ components宣言(コントローラーまたはAppController)で変数を設定して、コントローラー+アクションを指定します。

public $components = array(
    'Auth' => array(
        'loginAction' => array(
            'controller' => 'users',
            'action' => 'login',
            'plugin' => 'users'
        ),
        'authError' => 'Did you really think you are allowed to see that?',
        'authenticate' => array(
            'Form' => array(
                'fields' => array('username' => 'email')
            )
        )
    )
);

参照: http: //book.cakephp.org/2.0/en/core-libraries/components/authentication.html#configuring-authentication-handlers

于 2012-04-16T07:47:40.543 に答える