cakeでbake
いつかどこかで見た「お前らはだまってcake(笑)でbake(笑)でもしとけよ」という煽りが今でも忘れられません。甘党の僕としては、結構好きな響きなのですが。
初めてbakeした時にちょっとつまったことを思い出し、bakeしつつメモ。
バージョンはCakePHP1.3.14です。XAMPP for Mac 1.7.3 の上で動かしています。
bakeでできること
bakeでは、アプリケーション構築に必要なファイル群を、コマンドライン上での対話形式で作成できます。データベースとテーブルさえあれば、スピーディーにテーブルごとのCRUD機能とデフォルトビューを備えたアプリケーションが完成します。
初見ではMVCそれぞれのファイルを生成できる、という認識でした。しかしそれに加え、database.phpを作成=database設定を作成する機能と、新appディレクトリ=プロジェクトを作成する機能も備えていて、これでちょっと混乱したんですよね。公式のマニュアルと表示が違うぞ、しかもそれについて説明ないぞと。
bakeの実行
alias作成
本筋とは関係ないですが、XAMPPのせいでパスが超絶長いので最初にalias作っちゃいます。VPS上でLAMP環境構築もやったので、そろそろXAMPP卒業すべきかな…
.bashrcを開く(ない場合は新規作成)
.bashrcをbash起動時に読み込ませる設定をしていない場合はこっち
bakeを行うディレクトリに移動
※注意 移動しなくても下記のようにbakeを行うディレクトリパス指定するとかbake開始後正しくパス指定すれば問題ないです。
本当に情けないんですが、最初僕はこれを知らず行き詰まりました。rootから長々とパスを指定してcakeコンソールを起動していたのですが、
これを避けるために、さっき作ったcakedir使いつつappまで移動
$cd app
cakeでbake!
path通してないのでcakeのパスをしっかり指定して実行
What would you like to Bake? (D/M/V/C/P/F/T/Q)
M モデルの作成(CとVは略)
XAMPP+bakeでエラーが発生するみたいですね。下記は一例。
詳しい知識はないのであれですが、mysqlは localhostと指定すると unix domain socketを使うのですが、IPで指定することで TCP socket を強制的に使わせることができるのだそうです。
あるいは素直に設定のずれを解消する方法もあります。下記の記事が参考になるかと思います。