0

次のように、Cake 2.2.4 で ACL (グループレベルのみ) を実装しました。

Group.1はコントローラにアクセスできます

Group.2はコントローラー/採用担当者にアクセスできます

Group.3はコントローラー/求職者にアクセスできます

これはすべて正常に機能しますが、問題は、Group.2の誰かがコントローラー/求職者の何かにアクセスしようとしたときに、アクセス権$this->Session->flash('auth')がないことを伝えるメッセージを表示することです。メッセージを設定したり、要素を介して生成された HTML をカスタマイズしたりできるなど、Flash メッセージを非常に多く制御できるため、これはある程度は問題ありません。

しかし、アプリのユーザーは、同じページが単純に更新されてエラーが発生するのは直感に反すると不満を漏らしています。これは主に、アプリが場合によっては 1 人のユーザーがGroup.2Group.3に所属できるようにする必要があるためです。そのため、フラッシュ メッセージはユーザーにアカウントを「アップグレード」して両方のグループに所属させる方法を伝える必要があります。

このため、「アカウントの更新」フォームを含む新しいコントローラー アクションへの即時リダイレクトは、フォームへのリンクを含むフラッシュ メッセージやフォームが埋め込まれた (緊急) フラッシュ メッセージよりも直感的であると感じられますか?その中に(もう一度!)

問題は、ユーザーをリダイレクトする方法が思いつかないことです

4

1 に答える 1

2

これは、追加の CakePHP 2.3 で解決されました。AuthComponent::$unauthorizedRedirect

詳細: http://book.cakephp.org/2.0/en/appendices/2-3-migration-guide.html#authcomponent

于 2013-04-01T07:49:39.813 に答える