CakePHP2.1.1安定版メモ
参考
CakePHPで高速Webアプリ開発
第5回 CakePHPで作るToDoアプリ(1)
を参考にやってみましたが、5年も前の記事で、CakePHPのバージョンが違うために動かなかったり・・・。
ということで、上記記事に対するメモです。
前提
- DocumentRoot:http://localhost/
- CakePHPをセットアップしたディレクトリ:http://localhost/todo
- CakePHPフォルダの中身をここに入れました
DBの設計と作成
参照先にあるコードをコピーしてphpMyAdminのSQLタブを選んでペースト・実行すると、データベースが作成されます。
「dumpが以下になります」なんて言われても初心者にはどうしていいかわからないんですよね。
app/config/database.phpの書き換え
class DATABASE_CONFIG {
var $default = array(
'datasource' => 'Database/Mysql',
'driver' => 'mysql',
'connect' => 'mysql_connect',
'host' => 'localhost',
'login' => 'ここにDBのユーザー名',
'password' => 'ここにDBのパスワード',
'encoding' => 'utf8',
'database' => 'todo',
'prefix' => '',
);
}
'login'と'password'は書き換えてください。
コントローラの作成
参照先のコードでは動きません。
以下の部分を変更しました。
$this->set('tasks', $this->Task->findAll(null, null, 'Task.created ASC'));
↓
$this->set('tasks', $this->Task->find('all',null, null, 'Task.created ASC'));
また、ファイル名を「コントローラ名_controller.php」と説明していますが、これでは動きませんでした。
「TasksController.php」としました。いつからか、アンダースコアが不要になったようです。
また、コントローラを入れるフォルダも「controllers」と説明されていますが、現在は「Controller」になっています。
モデル作成前に実行してみる
http://localhost/todo/tasksにアクセスしてみました。
説明では「モデルがない」と言われるよ!と書いていますが、「ビューがないよ」と言われました。
モデルはいらないのかな?
モデルの作成
いらなさそうなんですが、一応作成しました。
http://localhost/todo/tasksにアクセスしても変化なし。
ビューの作成
コードはそのままコピペでいいんですが、ファイル名が違います。
C:\xampp\htdocs\todo\app\View\tasks\index.ctpとして保存します。
http://localhost/todo/tasksにアクセスするとこのようになりました。
一応完成です。ただし、ほとんど理解できていない・・・。