CakePHP 2.3 で次のルーティングをセットアップしようとしています。
ドメイン/ニュース/スラッグ
ルーティングに関するクックブックのガイドラインに従ってい ますが、作成されるルートは正しいです。私が遭遇する問題は、リンクを選択すると、「NewsController にメソッドがありません」というエラー メッセージが表示されることです。
ここに私が設定したものがあります:
Router::connect(
'/news/:slug/',
array('controller' => 'news', 'action' => 'view'),
array(
'pass' => array('slug'),
'slug' => '[^_]+'
)
);
スラッグを正規表現 (アンダースコアを含まない任意の文字列) で渡しています。
これはインデックスページの私のリンクです:
<?php echo $this->Html->link(
$news['News']['title'],
array(
'controller' => 'news',
'action' => 'view',
'slug' => $news['News']['slug']
)
); ?>
前述のとおり、URL は正しく作成されており、次のようになっています: /news/test-slug-news-story
しかし、それをクリックすると、「NewsController にメソッドがありません」というエラー メッセージが表示されます。
私が見逃しているのは明らかですか?これを見るには長すぎます。
ありがとう、ポール