CakePHP(routes.phpファイル)でユーザーIDをバニティURLにマップするルートを作成する簡単でベストプラクティスの方法があるかどうか疑問に思いましたか?
ルートページに次のテストコードがあります(これを行うにはひどい方法です)。
$users = array
(
1 => 'firstname-lastname',
2 => 'firstname2-lastname2'
);
//profiles
foreach($users as $k => $v)
{
// LESSONS (Profiles)
Router::connect('/:user', array('controller' => 'teachers', 'action' => 'contentProfile', $k),
array('user' => '(?i:'.$v.')'));
}
上記のコードは、次のアクションとしてconProfileを使用して教師コントローラーをルーティングします。
mydomain.com/teachers/contentProfile/1
to
mydomain.com/firstname-lastname
ルーティングページからデータベースに接続できますか?それはパフォーマンスの観点からは良い考えではありませんか?これを行うための最良の方法を教えてください。