質問: どのようにcakephpのコントローラアクションからURLを設定するには? 私はソーシャルネットワーキングサイトを作っていました。それぞれのプロフィールページは、親しみやすいURLを使用して表示する必要があります。 今のようなwww.siteprof.com/profile/23 私はこのURLの最後にaditioanl文字列 'jake-web-developer'を追加する必要があります。結果は **www.siteprof.com/profile/23/jake-web-developer** のようになります。プロファイルリンクを作成するときにこれを実行できることはわかっています。しかし、誰かがwww.siteprof.com/profile/23このリンクを使用してこのプロファイルにアクセスした場合、その前のテキストをURLに追加できますか? また、コントローラのアクションからこれらの特定の文字列をURLに追加する方法はありますか?
回答: それはCakePHPのコンベンションでは正しいようには見えませんが、以下のようになります: ``` **www.siteprof.com/profiles/view/23** ``` その後、 `view($ id = 0、$ name = "")`というアクションを持つようにprofiles_controllerを設定します。 私はそれがなぜ重要なのかわかりませんが、nameパラメータを使ってリンクを生成することはできますが、それでも動作します: ``` www.siteprof.com/profiles/view/23/jake-web-developer ``` 最後の文字列を追加することが重要な場合は、View Controllerでリダイレクトを行う必要があります。 $ nameが指定されているかどうかを確認し、そうでない場合は、名前の付いたURLにリダイレクトします。