エス技研

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.

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

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

  関連記事

CakePHP 2.3 ID以外のカラムでアソシエーション(連携)をさせる場合の詳細ページの注意点

ID以外のカラムでアソシエーション(連携)させて詳細ページを表示させる際の考え方と注意点をサンプルソースを用いて解説しています。

Google Analytics APIを CakePHP3で動かしてレポートデータを取得する方法の解説
Google Analytics APIを CakePHP3で動かしてレポートデータを取得する方法の解説

CakePHP3で Google Analytics APIからレポートデータを取得する処理の解説。PHPのサンプルソースをCakePHP3で動くように改造。加えて、ディメンションやメトリックスを条件に設定する方法なども。

CakePHP3でパンくずの指定は HTMLヘルパーを使って指定する方法を解説
CakePHP3でパンくずの指定は HTMLヘルパーを使って指定する方法を解説

CakePHP3でパンくずの指定方法の解説。2つのヘルパーがあるが簡単なHTMLヘルパーを使った方法を、実際の状況に合わせて3つのパターン(エレメント化、ブロック化)にして解説。

CakePHP3で Ajaxを使う方法の解説。3.6以降対応。Successとthenの両方を解説。
CakePHP3で Ajaxを使う方法の解説。3.6以降対応。Successとthenの両方を解説。

CakePHP3でajaxを利用する処理の実装方法を解説。プルダウンを変更するとデータベースの値を取得し検索結果の内容を変更するというような処理を想定。CakePHP3.6以降の CSRF対策対応済。

CakePHP3にOGPをfetch、asignを利用してテンプレートごとに指定する方法を解説
CakePHP3にOGPをfetch、asignを利用してテンプレートごとに指定する方法を解説

CakePHP3でOGPを設定する方法を解説。fetch、assignを使用しレイアウトファイルに編集した変数にテンプレートファイルから値を指定する。これを利用してOGPを編集する。

CakePHP3でレコードを追加、更新(Insert、Update)する複数の方法を紹介
CakePHP3でレコードを保存(追加、更新、Insert、Update)する複数の方法を紹介

CakePHP3でレコードを追加、更新(Insert、Update)する記述方法を解説。1件ずつ処理、全件をまとめて処理、条件に該当する複数件のレコードを処理方法をサンプルコードを用いて解説。

CakePHP3で画像・ファイルのアップロード処理を自作・解説付き・その2
CakePHP3で画像・ファイルのアップロード処理を自作・解説付き・その2

ファイルのアップロード機能の自作サンプルコードとその解説のその2。アップロード機能に関連するファイルの更新や削除の処理や画像、フォルダのパスの指定方法などを含めて解説。

CakePHP3でCookieを保存、呼び出し、削除の操作・CakePHP3.7対応
CakePHP3でCookieを保存、呼び出し、削除の操作・CakePHP3.7対応

CakePHP3.7でCookieを保存、取り出し、削除する方法を解説。CakePHP3でのCookieの取り扱いはバージョンごとに変更されるため、環境に合わせた方法を探す必要がある。

CakePHP3でデフォルトのソート条件を設定してユーザの選択肢たソート条件を有効にする方法
CakePHP3でデフォルトのソート条件を設定してユーザの選択肢たソート条件を有効にする方法

CakePHP3でデフォルトのソート条件を設定しつつ画面上でユーザがソート条件を選択したときもソート処理を実行させる方法を解説。ソート条件はページネーションの処理として実装。

CakePHP 2.3でOn Duplicate Key構文を実装

CakePHPで On Duplicate Key構文を Queryを利用して実装する方法をサンプルソース付きで解説します。