私はCakephp 2+を使用しており、「投稿」と呼ばれるモデルがあり、投稿はさまざまなタイプにすることができます-たとえば、ブログ投稿、メッセージなど.
config/routes.phpで、ルーティングを設定して、/posts/12/post-title
または/blog/14/blog-title
現時点で私はこれを持っています:
Router::connect('/:type/add', array('controller' => 'posts', 'action' => 'add'),
array('pass' => array('type')));
Router::connect('/:type/:action', array('controller' => 'posts'),
array('pass' => array('type')));
# Custom posts router
Router::connect('/:type/:id/:slug',
array('controller' => 'posts', 'action' => 'view'),
array('pass' => array('type', 'id', 'slug'), 'id' => '[0-9]+'));
しかし、問題は、これがすべての URL に使用されることです。そのため、cakephp は、ユーザー プロファイル ページが投稿コントローラーを参照する必要があると判断します。
...
#View Profile
Router::connect('/profile/:id', array('controller' => 'users', 'action' => 'view'),
array('pass' => array('id'), 'id' => '[0-9]+'));
これを適切に行う手段を知っている人はいますか?どうもありがとう