[CakePHP]bakeでファイルを生成

CakePHPを始めた頃は勉強のためもあり、関連ファイルはすべて自分で作成して各ディレクトリにアップし動作を確認していました。ファイル名を複数形にする癖がついたのもそのお陰です。Bakeの存在は当時から知っていたものの使わずにいましたので、あらためて流れを確認してみました。

Bakeはプロトタイプや簡易な管理画面作成には向いていると思います。ウェブアプリケーション開発の場合、ユーザーが使いやすいデザインを採用することはもちろん重要だと思いますが、プロトタイプの場合は、デザイン決定の前に開発側でプログラムをさっと作り動作を確認したい、という要望も多いのではないでしょうか。

Bakeを始める前の準備

1.データベース内にCakePHPの慣習に則った(例えば複数形の名前にする等)のテーブルを作成しておく。※データベースの規約
テーブルが存在しないと下記の通りbakeの際にエラーになります。
※データベース作成とテーブルのフィールド作成の手順などは省かせていただきます。

【エラーメッセージ】
One moment while associations are detected.
Exception: SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘cake_db.guitars’ doesn’t exist in [[/var/www/html/***********]

2.Bakeコマンドを実行する際、CLI(コマンドラインインターフェース)で現在地を確認し、CakePHPのルートディレクトリにいることを確認します。
具体的には、”bin”, “config”, “src”, “webroot”と同じ階層にいるという意味です。

Bakeコマンドの実行

下記のコマンドを実行すると、「shops」という名前に基づいた関連ファイルを生成します。

bin/cake bake all shops

「all」、「shops」の部分はbakeに渡すパラメータとなります。
「all」を実行するとMVCとして必要なプログラムファイル1式を各ディレクトリに生成します。「shops」はデータベース内のテーブルの名前です。パラメータについてはこちらも参考にしました。

参考サイト
CakePHP3でのBakeの使い方については、下記サイトを参考にさせていただきました。
https://qiita.com/geechlife/items/4f7d19bd60b797ebb087
https://dev.to/northgoingzax/cakephp-3-bake-by-example-40pp

関連記事

  1. [CakePHP3]2つのデータベースを設定し同時に使用する

  2. [CakePHP]ルーティング設定で表示するページ、階層を変更する

  3. Echo Dot (エコードット) - スマートスピーカー with Alexa

    [ウェブシステム開発]Alexa開発スキルを学ぶ:その3

  4. Amazon Echo

    [ウェブシステム開発]Amazon Alexa開発:音声デザインガイド…

  5. [WordPress]デフォルト投稿タイプの記事にカスタム投稿タイプの…

  6. [Google Adsense]レスポンシブ広告コードを修正する方法

  7. [Amazon Polly]多言語翻訳に対応したワードプレスプラグイン…

  8. [AWS]Elastic Beanstalk、使ってみました

最近の記事

PAGE TOP