初心者向けの Cake PHP ブログ チュートリアルで問題が発生しています。site.com/posts/index ページを開こうとすると、PostsController.php ファイルを作成する必要があるというエラーが表示されましたが、既に PostsController.php が配置されています。
Cake PHP ver 2.3.8を使用しています
これは私が得るエラーです
Error: PostsController could not be found.
Error: Create the class PostsController below in file: app\Controller\PostsController.php
チュートリアルに従って、ファイルをディレクトリに正しく配置しました。
これが私が作成した PostsController.php ファイルです。
<?
class PostsController extends AppController {
public $helpers = array('Html', 'Form');
public function index() {
$this->set('posts', $this->Post->find('all'));
}
public function view($id = null) {
if (!$id) {
throw new NotFoundException(__('Invalid post'));
}
$post = $this->Post->findById($id);
if (!$post) {
throw new NotFoundException(__('Invalid post'));
}
$this->set('post', $post);
}
}
?>
Post.php ファイル (モデル) は次のとおりです。
<?
class Post extends AppModel {
}
?>
ここにindex.ctpファイルがあります
<!-- File: /app/View/Posts/index.ctp -->
<h1>Blog posts</h1>
<table>
<tr>
<th>Id</th>
<th>Title</th>
<th>Created</th>
</tr>
<!-- Here is where we loop through our $posts array, printing out post info -->
<?php foreach ($posts as $post): ?>
<tr>
<td><?php echo $post['Post']['id']; ?></td>
<td>
<?php echo $this->Html->link($post['Post']['title'],
array('controller' => 'posts', 'action' => 'view', $post['Post']['id'])); ?>
</td>
<td><?php echo $post['Post']['created']; ?></td>
</tr>
<?php endforeach; ?>
<?php unset($post); ?>
</table>
私はすでに解決策を探し回っており、多くの人が同じ問題を抱えていることがわかりましたが、それは彼らの解決策が私のケースでは機能していないか、自分で修正して解決策を投稿しなかったかのどちらかです.
私を助けてください...
アップデート
問題は解決されまし<?php
た。欠落していたのはタグでした。