メイン helper,component,script
Auth | admin routing を利かせた url へ loginRedirect させる | 投稿するにはまず登録を |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
| 投稿者 | スレッド |
|---|---|
| custar | 投稿日時: 2008-8-10 15:36 |
Cake 職人 ![]() ![]() 登録日: 2007-5-31 居住地: 投稿: 189 |
Auth | admin routing を利かせた url へ loginRedirect させる - 5.2.6.4 loginAction
cookbook の上記ドキュメント中のサンプルでは と書かれていますが、これは次のように指定することも可能です。 ここで気になるのが、(1) 右辺の配列 第1項の "admin" => false。 これは Routing.admin を使わないことを意味しているようです。 注意が必要なのは、 "admin" というキーがあたかも Routing."admin" の "admin" を指しているような印象を受けてしまい、 "admin" => true とすれば Routing.admin が有効になった任意の url を作り出せる と類推 (誤解) してしまいます。 私自身、そう誤解していました。 これは、Routing.admin がデフォルト値の "admin" ならば問題ありません。 でも、Routing.admin を他の文字列、例えば "manager" にすると manager_index へリダイレクトされません。 Routing.admin を "manager" に変えた時は、 のように "admin" を "manager" に書き換えるとうまくいきます。 でも、Routing.admin を書き換えていたなんて忘れてしまいそうです。 なので、 としておくべきなのかもしれませんが、こんなの一々やってられない。 (3) のように書いておけば、フレームワーク内で適切に書き換えてくれるのが嬉しい筈。 という訳で、フレームワーク内をちょっといじります。 これで (7) は (8) と同じになります。 自分にとって分かりづらかったので、変更したまでで参考にならないかもしれ ませんが、何か不具合があったら、報告してください。 |
| custar | 投稿日時: 2008-8-11 18:13 |
Cake 職人 ![]() ![]() 登録日: 2007-5-31 居住地: 投稿: 189 |
Re: Auth | admin routing を利かせた url へ loginRedirect させる 不具合です。
引用:
これは $this->loginRedirect が array() の場合は正常動作しますが、 string で指定されている場合は期待通り動きません。 # テストしてなかった私が悪い。 例えば、$this->loginRedirect = "/users/index" の場合、 isset($redir["admin"]) => true .......えぇ!? $redir["admin"] => true .......えぇ!? なんという柔軟な (型の緩い) 言語。 という訳で修正。分かりずらいから入れ子の if で。 前述のコードには is_array($redir) を if に追加しています。 |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
| 投稿するにはまず登録を | |


