Motomichi Works Blog

その日学習したことについて書いている日記です。誰かの役に立ったらそれはそれで嬉しいです。

vagrantその0019-43 cakephp入門をやってみる(複数Modelの連携その2)テーブルにデータを挿入する

参考にさせて頂いたページ

複数Modelの連携(1/6):初心者のためのCakePHP2.0 プログラミング入門

ホストマシン環境

ゲストマシン環境

guest_booksテーブルにデータを挿入する

練習もする意味で、Scaffoldを使わずにデータの挿入をやってみる。

Model/GuestBook.phpの作成と記述内容

guest_booksテーブルにダミーデータを挿入する為のモデルを作成した。

<?php
App::uses('AppModel', 'Model');

class GuestBook extends AppModel {

}

Controller/GuestBooksController.phpの作成と記述内容

以下の通り。

<?php
App::uses('AppController', 'Controller');
class GuestBooksController extends AppController {
  public function add() {
    // post時の処理
    if ($this->request->is('post')) {
      $this->GuestBook->save($this->request->data);
    }
    // 表示用にテーブルのデータを取得してset
    $datas = $this->GuestBook->find('all');
    $this->set('datas',$datas);
  }
}

View/GuestBooks/add.ctpの作成と記述内容

以下の通り。

<h1>Add Page</h1>
<p>GuestBook Add Form.</p>
<?php
  echo $this->Form->create('GuestBook');
?>
content:
<?php
  echo $this->Form->text('content');
?>
my_sample_data_id:
<?php
  echo $this->Form->text('my_sample_data_id');
  echo $this->Form->submit("送信");
  echo $this->Form->end();
?>


<table>
<?php foreach ($datas as $data): ?>
  <tr>
    <td><?php echo $data['GuestBook']['id']; ?></td>
    <td><?php echo $data['GuestBook']['content']; ?></td>
    <td><?php echo $data['GuestBook']['my_sample_data_id']; ?></td>
  </tr>
<?php endforeach; ?>
</table>

データをテーブルに挿入する

http://192.168.33.10/cakephp/guest_books/add

のページにアクセスして、適当にデータを挿入した。

今回はここまで。