Cake PHP を始めたばかりです。公式サイトで提供されている本をフォローしています。最初のブログの例では、コントローラー、モデル、ビュー、つまり と を作成しPostsController.php
ましPost.php
たindex.ctp
。
LearnCake\app\Controller\PostsController.php
<?php
class PostsController extends AppController{
public $helpers = array('Html', 'Form');
public function index(){
$this->set('posts', $this->Post->find('all'));
}
}
?>
LearnCake\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>
例に示すように、モデルは空白のままです。
LearnCake\app\Model\Post.php class Post extends AppModel { }
この URL でページにアクセスしようとしましたhttp://localhost/LearnCake/posts/index
が、エラーが発生します。
Missing Database Table
Error: Table p_o_s_ts for model Post was not found in datasource default.
例として、 というテーブルを作成しましたposts
。という名前のテーブルを検索する理由がわかりませんp_o_s_t
。
私の接続ファイルは次のとおりです。
<?php
class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'root',
'password' => 'password',
'database' => 'cakephp',
'prefix' => '',
//'encoding' => 'utf8',
);
public $test = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'root',
'password' => 'password',
'database' => 'cakephp',
'prefix' => '',
//'encoding' => 'utf8',
);
}
私が間違っていることについて何か提案はありますか? を使用してnetbeans 7.2.1
います。という名前のプロジェクトを作成しましたLearnCake