データベースのテーブル作成が終わったので、bakeを使って、Scaffold コードの生成を実施する。
チュートリアルの通り、usersテーブルに対してbakeコマンドを実施する。
bin\cake bake all users
その結果、以下の順番でphpファイル、ctpファイルを自動で作成する。なお、各フォルダに存在しているemptyファイルは、ここで削除される。
src\Model\Table\UsersTable.php
src\Model\Entity\User.php
tests\Fixture\UsersFixture.php
tests\TestCase\Model\Table\UsersTableTest.php
src\Controller\UsersController.php
tests\TestCase\Controller\UsersControllerTest.php
src\Template\Users\index.ctp
src\Template\Users\view.ctp
src\Template\Users\add.ctp
src\Template\Users\edit.ctp
残りのbookmarks、tagsを実行する前に、allがなんだか調べてみる。allを指定すると、MVCに必要なものが完全に自動作成される模様。
bin\cake bake -help
all Bake a complete MVC skeleton.
allと同様のことを、各サブコマンドで作成してみる。ヘルプの説明を見て必要そうなもの。
controller・・・Controllerクラスを作成する
fixture・・・Fixtureクラスを作成する
model・・・Model、Tableクラスを作成する
template・・・コントローラに対応するビューを作成する
test・・・Testクラスを作成する
usersテーブルに対応するクラスを作成するとき、順番があったので、以下の順番で作成してみる。
bin\cake bake model bookmarks
bin\cake bake fixture bookmarks
bin\cake bake controller bookmarks
bin\cake bake test bookmarks
bin\cake bake template bookmarks
結果
modelで以下のファイルを自動生成する。
src\Model\Table\BookmarksTable.php
src\Model\Entity\Bookmark.php
tests\Fixture\BookmarksFixture.php
tests\TestCase\Model\Table\BookmarksTableTest.php
fixtureで以下のファイルを自動生成する。しかし、modelで生成済み。
tests\Fixture\BookmarksFixture.php
controllerで以下のファイルを自動生成する。
src\Controller\BookmarksController.php
tests\TestCase\Controller\BookmarksControllerTest.php
testはエラーが出たのと、上記でTestクラスができているので飛ばす。
templateで以下のファイルを自動生成する。
src\Template\Bookmarks\index.ctp
src\Template\Bookmarks\view.ctp
src\Template\Bookmarks\add.ctp
src\Template\Bookmarks\edit.ctp
残りのtagsテーブルの自動生成はallで実施する。ここまで。
コメント