bakeによるコードの自動生成 (3/4)
作成:2015-11-22 09:54
更新:2015-11-22 09:54
更新:2015-11-22 09:54
■生成されたファイルについて
では、プロジェクトの「src」フォルダを開き、ファイルが生成されていることを確認しましょう。bake allでは、以下のようなファイルが自動生成されます。
コントローラー、モデル(エンティティとテーブル)、そしてビューのテンプレート(add、edit、index、viewの4種類)がすべて作成されていることがわかるでしょう。今までの「MVCのファルを1つ1つエディタで作成していく」という作業は何だったんだ?と思うぐらい、あっけないですね!
この他、「tests」フォルダの中にも、以下のようなテスト用ソースコードファイルが生成されています。
テスト関連も自動生成されますので、後から一から書く必要もありません。
bake allで注目すべきは、単にコントローラーやモデルの基本コードが生成されているだけでなく、CRUDの基本機能も自動的に実装されている、という点でしょう。SamplesControllerを見ると、「index」「add」「edit」「view」「delete」というい5つのアクションメソッドが作成されているはずです。
index――テーブルの一覧データを表示(ページネーション使用)
view――選択したIDのデータを詳細表示
add――データの新規追加
edit――選択したIDのデータの編集
delete――選択したIDのデータの削除
こういうことですね。これは、前回までに作成したMembersとMessagesで作成したアクションと同じことに気がついたかもしれません。
実をいえば、先に説明したコードは、このbake allで生成したものをベースにしたものだったのです。「bakeでどんなソースコードが作成されるのか?」と思った人は、先のMembersとMessagesのコードを読み返してみてください。生成されるコードの基本形がわかるでしょう。
Controller/SamplesControllers.php
Model/Entity/Sample.php
Model/Table/Samplestable.php
Template/Samples/add.php
Template/Samples/edit.php
Template/Samples/index.php
Template/Samples/view.php
コントローラー、モデル(エンティティとテーブル)、そしてビューのテンプレート(add、edit、index、viewの4種類)がすべて作成されていることがわかるでしょう。今までの「MVCのファルを1つ1つエディタで作成していく」という作業は何だったんだ?と思うぐらい、あっけないですね!
この他、「tests」フォルダの中にも、以下のようなテスト用ソースコードファイルが生成されています。
Fixture/SamplesFixture.php
TestCase/Controller/SamplesControllerTest.php
TestCase/Model/Table/SamplesTableTest.php
テスト関連も自動生成されますので、後から一から書く必要もありません。
bake allで注目すべきは、単にコントローラーやモデルの基本コードが生成されているだけでなく、CRUDの基本機能も自動的に実装されている、という点でしょう。SamplesControllerを見ると、「index」「add」「edit」「view」「delete」というい5つのアクションメソッドが作成されているはずです。
index――テーブルの一覧データを表示(ページネーション使用)
view――選択したIDのデータを詳細表示
add――データの新規追加
edit――選択したIDのデータの編集
delete――選択したIDのデータの削除
こういうことですね。これは、前回までに作成したMembersとMessagesで作成したアクションと同じことに気がついたかもしれません。
実をいえば、先に説明したコードは、このbake allで生成したものをベースにしたものだったのです。「bakeでどんなソースコードが作成されるのか?」と思った人は、先のMembersとMessagesのコードを読み返してみてください。生成されるコードの基本形がわかるでしょう。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
※関連コンテンツ
「初心者のためのCakePHP3 プログラミング入門」に戻る