1

私は CakePHP を学ぼうとしていますが、ルート以外のルートにアクセスしようとすると 500 エラーが発生するという問題に遭遇しました。テストアプリで次のように設定しました。

1)ドキュメントルートをにhttp://cake.localhost.com/設定しています/app/webroot/

2)/app/Config/routes.phpファイルには、次のルートが設定されています。

Router::connect('/', array('controller' => 'posts', 'action' => 'index', 'index'));
Router::connect('/posts/*', array('controller' => 'posts', 'action' => 'view'));
Router::connect('/users/*', array('controller' => 'users', 'action' => 'view'));

3) を使用しcake bakeてシステムを作成しましたが、足場を使用しています。

4)私が行くとhttp://cake.localhost.com/posts/view/1HTTP Status Code 500

さらに情報が必要な場合はお知らせください。喜んで対応させていただきます。事前に情報をありがとう!

4

1 に答える 1

1

これは、フレームワーク全体のコア機能に関連する正当な質問です。

1.) 正しい。

2.) 指定した方法でルートを構成すると、すべてのリクエストが指定されたコントローラーのビュー アクションにリダイレクトされます。これはおそらくあなたが考えていたものではありません。

Cake のデフォルトのルーティングは、命名規則に従ってルーティングを試みます。ルーティングの例とその動作の説明については、CakePHP の壊れたインデックス メソッドを参照してください。

3.) 足場はおそらくあなたが考えていたものではありません。スキャフォールディングは基本的に、スキャフォールディングされたコントローラーに Core コントローラー生成のデフォルトを使用するようにフラグを立てるだけで、生成されたコードの実際の書き込みをスキップします。デフォルトを生成することもできます。基本的な CRUD、Cake スタイルのアイデアが得られます。

アプリのクローンを作成し、これらの手順を適用すると、すべてが期待どおりに機能しました。:) HTH

于 2013-04-11T04:01:57.987 に答える