2

これを短く簡潔にします。routes.php で次のようなものを簡単に指定して、目的のフォームの URL を機能させることができます。

Router::connect('/:controller/:id',
    array('action'=>'item'),
    array('id'=>'[0-9]+')
);

ただし、ルートは引き続き Cake によって「/:controller/item/:id」として生成されます。アクションを含めずにCakeの逆ルーティングでURLを作成する簡単な方法はありますか? それとも、自分のアプリケーションを調べて、関連する配列を手動で "/:controller/$id" に置き換える必要がありますか?

4

1 に答える 1

1

これは私の問題に対する可能な解決策です-次のようにルートを指定した場合:

Router::connect('/videos/*',
    array('controller'=>'videos', 'action'=>'item'),
    array('pass'=>array('id'))
);

これを /videos/$id に戻す逆ルートのようです。

ただし、これと元の試行の違いが何であるか、元の試行がルーティングしにくい (または状況によっては) 難しい理由はまだわかりません! そのため、Cake のルーティングに関する専門知識を提供してくれる人は大歓迎です。

于 2012-05-29T15:23:00.413 に答える