CakePHP Note (v1.3) > コンソール > Bake(コードの生成)
Bake(コードの生成)
コマンドラインからBakeを使用して、アプリケーションに必要なコードを生成する事が出来ます。データベースにテーブルを作成しておけば、Bakeを使ってデータベース設定、モデル、ビュー、コントローラのファイルを生成する事が出来ます。
Bakeを使う
ディレクトリに移動し、'cake bake'を実行します。
$ cd /path-to-cake/cake/console/ $ cake bake
Bakeを実行すると以下の例のように対話的な画面になり、やり取りを続けてゆくとコードが生成されます。
Welcome to CakePHP v1.3.x Console --------------------------------------------------------------- App : garacter.com Path: /path-to-cake/app --------------------------------------------------------------- Interactive Bake Shell --------------------------------------------------------------- [D]atabase Configuration [M]odel [V]iew [C]ontroller [P]roject [Q]uit What would you like to Bake? (D/M/V/C/P/Q)
生成されたファイルの文字コードを日本語の使えるUTF-8などに変更するのを忘れずに。文字コードを変更せずに日本語を使うと予期せぬ不具合が起こってしまいます。例えばモデルファイルに指定した検証ルールのエラーメッセージが表示されないなど。
新しくアプリケーションを追加する
'cake bake project'を実行します。
Welcome to CakePHP v1.3.x Console --------------------------------------------------------------- App : app Path: /path-to-cake/app --------------------------------------------------------------- What is the full path for this app including the app directory name? Example: /path-to-cake/app/myapp [/path-to-cake/app/myapp] >
アプリケーションのフルパスを確認されますので、パスを入力して実行します。
[/path-to-cake/app/myapp] > /path-to-cake/app/newapp Bake Project Skel Directory: /path-to-cake/cake/console/libs/templates/skel Will be copied to: /path-to-cake/app/newapp --------------------------------------------------------------- Look okay? (y/n/q) [y] > y Do you want verbose output? (y/n) [n] > n --------------------------------------------------------------- Created: myapp4 in /path-to-cake/app/newapp --------------------------------------------------------------- Creating file /path-to-cake/app/newapp/views/pages/home.ctp Wrote /path-to-cake2/app/newapp/views/pages/home.ctp Welcome page created Random hash key created for 'Security.salt' CAKE_CORE_INCLUDE_PATH set to /path-to-cake/cake in webroot/index.php CAKE_CORE_INCLUDE_PATH set to /path-to-cake/cake in webroot/test.php Remember to check these value after moving to production server