私はクライアント用のCakePHPサイトを構築していますが、面白い問題があります。ユーザーは、このタイプのURL(http://mainsite.com/username
)を使用してサイト内に独自のランディングページを作成できる新しい機能を追加したいと考えています。これはケーキサイトなので、特にサイト内のコントローラと同じユーザー名を選択した場合は、すべての種類のルーティングの狂気につながる多くの値がusername
です。ユーザデータを検証するためにCakePHPでコントローラ名のリストを取得するにはどうすればよいですか?
私のアプローチは次のようなものです:ユーザコントローラのbeforeValidate
機能では、すべてのコントローラ名のリストに対して提供されたユーザ名をチェックし、一致するものがあればfalse
を返します。私の質問は - どのようにすべてのコントローラの名前のリストを得ることができます(実際にはファイルの上にループしていない/app/controllers
)?これも可能ですか?
ありがとうございます!
更新:あなたは、CakePHP 2.xのを使用している場合、リストは '$コントローラー=のApp ::オブジェクト(「コントローラ」)として取得することができます;'。 – Fr0zenFyr