エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


CakePHP 2.3 bakeの超初心者向けフォロー講座

      2014/06/26

Bakeの超初心者向け講座

 

CakePHPの Bakeとは?

 
CakePHPなどのフレームワークを使う際に非常に便利なものが bakeのようなプログラムの自動生成ツールです。
 
CakePHPのチュートリアルでも、最初に CakePHPの基本的な説明があった後の 2番目の項目として説明されるくらい重要なものとして提示されている、非常に便利な自動でソースファイルを生成してくれるツールです。
 
ですが、フレームワークを初めて使う方には馴染みがないものであることも確かです。
そんな場合は、下記のサイトで非常に分かりやすく丁寧に説明されていましたので、参考になると思います。
 http://hijiriworld.com/web/cakephp-bake/
  ※CakePHP 2.3のバージョンの画面ではありませんので、見た目が少し違う部分もありますが。
 
 

Bakeをインストールする場所

 
しかし、私の場合は、最初の方の下記の記述の部分から「????」が頭に浮かび、進めなくなりました。
———————————
CakePHPのインストール
サンプルでは XAMPPのローカルサーバを使い、c:\xampp\htdocs\bake フォルダにCakePHPをインストールすることにします。
———————————
 
XAMPPに関しては、「PHPを勉強するための環境を構築するにはXAMPPが最適」で書いているように、XAMPP環境で構築をしていましたので、問題ありませんでした。
 
でも、ここでなぜ「c:\xampp\htdocs\bake」フォルダに CakePHPをインストールするのか、ということが理解できず、すでに CakePHPをインストールしている環境があるのに、なぜ?という疑問でした。
 
これについては、bakeの実験をする際に、これまで作ってきたプログラムなどに影響を与えないように、今回の実験用の bakeの環境を作りましょう。ということなのです。
(CakePHPは、作成するアプリケーションごとに CakePHPの環境を用意する運用を前提として作られており、何か新しいプログラムを作成する際は、その都度新しい CakePHPをインストールすることになります。その際、フォルダは作成するアプリケーションごとに分かりやすい名前を付けて設定します。ここでは、bakeの実験をしますので、bakeというフォルダに CakePHPを入れましょう、ということになります。)
 
そのため、XAMPPを使っている方の場合は、「c:\xampp\htdocs\cake」とか「c:\xampp\htdocs\cakephp」といったフォルダに CakePHPがインストールされていると思いますが、今回の実験用に「c:\xampp\htdocs\bake」フォルダを作成し、その中に「c:\xampp\htdocs\cake」と同じファイル一式を入れましょう、ということになります。
 
すでにこの部分を通り過ぎた方には当たり前すぎる話ではありますが、初めての私はこんなところにもつまずきポイントがありました!!
 
 

Bakeを起動させるパスの設定

 
また、「bakeを起動する」の箇所に書かれている PATH(パス)の登録(3番と 5番)ですが、ここで書かれているコマンドプロンプトでの登録は、一時的なパスの設定のため、コマンドプロンプトを一度閉じてしまうと、設定したパスは消えてしまします。
そのため、おおよそ、PHPのパスだけは恒常的に設定しておく方がいいと思いますので、下記のサイトを参考にしながら対応しておくことをお勧めします。(bakeのパスは作成するアプリケーションごとに変更することになりますので、恒常的なパスの設定をしてもあまりメリットは感じられないような気がします。)
 http://pocketstudio.jp/win/xp/path.html
 
PHPのパスを上記から設定した場合は、2番、3番が不要になります。
また、4番、5番のパスの設定を毎回するのは面倒ですので、その部分は、6番でディレクトリに移動した後、7番の「bakeの起動」ところで「console\cake bake」と入力すると同じ処理になります。
 
7番の「cake bake」は、「cake」というコマンドに「bake」という引数を付けてコマンドを実行させる記述なのですが、通常は、「cake」と書いただけでは「cake」というコマンドがどこにあるかが分からないため、5番で cakeのある場所を設定しています。
ですが、cakeというコマンドを実行する際に cakeコマンド(cakeコマンド用のプログラム)がある場所も一緒に記述することで事前にパスを設定しなくてもよくなります。
毎回パスの設定をするのも面倒ですので、こんな方法もあるという一例です。

 - CakePHP 3.x 4.x

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

CakePHP3のメール送信の処理・テンプレート使用・添付ファイル送信も解説
CakePHP3のメール送信の処理・テンプレート使用・添付ファイル送信も解説

CakePHP3からメールを送信する方法解説。基本的な記述方法を基にして、テンプレートを使う方法、ファイルを添付する方法へと拡張しながら解説。

CakePHP 2.3 主キー(ID)以外のキーで更新方法 updateAll

主キー(ID)以外のカラムをキーとして更新する方法、updateAllの使い方をサンプルを用いて解説します。

CakePHP3チュートリアルで日付と時刻のDateTimeでエラーが出たときの対処方法
CakePHP3チュートリアルで日付と時刻のDateTimeでエラーが出たときの対処方法

CakePHP3のブックマークチュートリアルには記載ミスもあり、そのまま動かない個所もある。CakePHP3では namespaceを使うようになったので、classを呼び出すときに¥を追加する必要が!

CakePHP3のdatetime型カラムの日時の扱い。秒まで正しく表示する方法
CakePHP3、CakePHP4のdatetime型カラムの日時の扱い。秒まで表示する方法

CakePHP3の日時カラムで秒まで扱う場合はdate()、strtotime()関数ではうまくいかない。CakePHP3であらかじめ用意された「i18nFormat()」を使用する。

CakePHP3で「SQLSTATE[23000]: Integrity constraint violation」「SQLSTATE[42S22]: Column not found」などのエラーが出たときの確認するポイント
CakePHP3で「SQLSTATE[23000]: Integrity constraint violation」「SQLSTATE[42S22]: Column not found」などのエラーが出たときの確認するポイント

CakePHP3の開発で発生する「SQLSTATE[23000]: Integrity constraint violation」「SQLSTATE[42S22]: Column not found」のエラーには特有の原因もあるため、その説明と対処方法の解説。

VirtualBoxにCakePHP3を設置。必要なCentOS、Apache、PHP、MySQL、Composerをインストールし設定する。
VirtualBoxにCakePHP3を設置。必要なCentOS、Apache、PHP、MySQL、Composerをインストールし設定する

VirtualBoxにCentOS、Apache、MySQL、PHPをインストールするところから初めてCakePHP3の開発環境を構築する手順を詳細解説。この記事1つで全ての設定が完了する。

CakePHP3でComposerでインストールできないプラグイン、外部ライブラリを vendorに入れて手動で読み込む方法
CakePHP3でComposerでインストールできないプラグイン、外部ライブラリを vendorに入れて手動で読み込む方法

CakePHP3にComposerからインストールできないプラグインやライブラリなどを利用する方法、vendorにファイルを設置し、composer.jsonを更新し、それを呼び出す方法を詳細に解説。

CakePHP3のCakeDC/Users、Authでログインなしでもアクセスを許可する設定
CakePHP3のCakeDC/Users、Authでログインなしでもアクセスを許可する設定

CakePHP3の Authコンポーネントや CakeDC/Usersプラグインなどを利用したユーザ管理・認証システムにおいて、ログインしていなくても見ることができるページの設定方法を解説。

CakePHP3の検索プラグイン「friendsofcake/search」の設置方法・CakePHP3.6対応
CakePHP3の検索プラグイン「friendsofcake/search」の設置方法・CakePHP3.6対応

CakePHP3で検索を担うプラグイン「friendsofcake/search」の紹介。基本的な設置方法の紹介のほか、処理の記述方法のバリエーション、エラーの解説など。CakeDC/searchより導入は簡単!

CakePHP3でページごとに読み込むJavaScript、CSSを変える処理の解説
CakePHP3でページごとに読み込むJavaScript、CSSを変える処理の解説

CakePHP3でJavaScriptやCSSを編集する基本形から、それらやテンプレート(エレメント)を特定のテンプレートを読み込んだときのみ編集、実行するための方法、ブロック化について解説。