CakePHPでのmigration

cakePHP No Comments »

schema.phpの内容をDBへ反映させるには

% cake schema run create

昔書いたのだけど、どうやら「run」は1.3から省かれたみたい。まだ使い方よくわかってない。

CakePHP のスキーマシェルを使用したマイグレーション :: スキーマ管理とマイグレーション :: コアコンソールアプリケーション :: マニュアル :: 1.3コレクション
CakePHP のスキーマシェルを使用したマイグレーション :: スキーマ管理とマイグレーション :: コアコンソールアプリケーション :: マニュアル :: 1.2コレクション

CakePHPを使って複数人開発する際のDB同期

cakePHP No Comments »

複数人で開発する場合、DBのテーブルレイアウトの同期が面倒だったりする。
CakePHPではcake schemaコマンドを使うとよさそう。Railsのrake db:migrateと同じ役割かな。

% cd /path/to/cake_install/app
% cake schema generate -f

適当な場所でこれを実行するとどこのDB見たらいいのかわからんので以下のようなエラーが出る。
Fatal error: ConnectionManager::getDataSource - Non-existent data source default in /path/to/cake_install/cake/libs/model/connection_manager.php on line 102
(cakeコマンドはパスを通しておく → KYOKUTYO NO BLOG. » Blog Archive » CakePHPのcakeコマンドを使う)

config/schema/schema.php
というファイルに書き出される。
テーブルレイアウト変更する場合はこれを編集して

% cake schema run create

したらよさげ。

gitなどでschema.phpを共有すると簡単にテーブルレイアウトが同期できる。

CakePHPのcakeコマンドを使う

cakePHP No Comments »

CakePHPのcakeコマンドを使うまで。CakePHPのバージョンは1.3.11です。

% vim ~/.zshrc.mine

.zshrc.mine だったり .zshrc だったり .bash_profile だったり .bashrc だったりするかも。

export PATH=/hoge/fuga:$PATH
↓このように変更
export PATH=/hoge/fuga:$PATH:/path/to/cake_install/cake/console

% source ~/.zshrc

(変更の反映)

% cake
Welcome to CakePHP v1.3.11 Console
---------------------------------------------------------------
Current Paths:
 -app: console
 -working: /path/to/cake_install/cake/console
 -root: /path/to/cake_install/cake
 -core: /path/to/cake_install

Changing Paths:
your working path should be the same as your application path
to change your path use the '-app' param.
Example: -app relative/path/to/myapp or -app /absolute/path/to/myapp

Available Shells:
 acl [CORE]                         benchmark [DebugKit]               schema [CORE]
 api [CORE]                         console [CORE]                     testsuite [CORE]
 bake [CORE]                        i18n [CORE]                        whitespace [DebugKit]              

To run a command, type 'cake shell_name [args]'
To get help on a specific command, type 'cake shell_name help'

WindowsXP、XAMPPでCakePHP

cakePHP 1 Comment »

基本的にCodeZine:CakePHPフレームワークによる快速WEB開発(Cake, フレームワーク, PHP, CakePHP)をなぞりながらやっていきます。

  1. ダウンロード

    1. こちら(CakePHPのサイト(英語))へどうぞ

    2. "CakePHP 1.1.11.4064"をクリック

      cake1.gif

    3. "cake_1.1.11.4064.tar.gz"をクリック

      cake2.gif

    4. "NoThanks"をクリック(Donateしたい場合は別で。。)

      cake3.gif

      最新版は2006年12月10日時点で1.1.11.4064。

  2. 解凍

    ダウンロードされたcake_1.1.11.4064.tar.gzをLhaplusで解凍します。 cake_1.1.11.4064というフォルダが現れます。 適当な名前にリネームして(この場合htdocs-cake) C:\Program Files\xampp\ に置きます。

  3. httpd.confいじり

    XAMPPデフォルトだとここかしら。 C:\Program Files\xampp\apache\conf\httpd.conf htdocsと書いてある箇所を2箇所くらい?htdocs-cakeに書き換え。 スタート > すべてのプログラム > ... > CONTROL XAMPP SERVER PANEL で XAMPP Control Panel Applicationを起動→Apache再起動。

  4. ブラウザでアクセスやたー

    ブラウザで http://localhost/ にアクセスすると 「CakePHP Rapid Development Your database configuration file is not present.」 というメッセージが表示されます。 cake4.gif

  5. データベースの設定

    C:\Program Files\xampp\htdocs-cake\app\config 内の database.php.default を database.php とリネーム。 (一応バックアップしとく) 最後の方、login、password、databaseを自分の設定に変更。

    var $default = array('driver' => 'mysql',   'connect' => 'mysql_connect',   'host' => 'localhost',   'login' => '******',   'password' => '********',   'database' => '******',   'prefix' => '');
  6. データベースの作成

    http://localhost/phpmyadmin/ から↑で指定したdatabese名と同じデータベースを作成。 (割&愛します)

  7. データベース接続の確認

    http://localhost/ へアクセスすると、 さっきまで

    CakePHP Rapid Development Your database configuration file is not present.

    だったメッセージが

    CakePHP Rapid Development Your database configuration file is present. Cake is able to connect to the database.

    に変わってて嬉しい。

  8. mod_rewriteをー

    CodeZineに

    なお、Apacheのmod_rewriteが利用できるように設定しておいてください。詳細はcakephp.jpに説明があります

    とか書いてあるのでhttpd.conf内を検索したら

    #LoadModule rewrite_module modules/mod_rewrite.so

    こんな様子だったので

    LoadModule rewrite_module modules/mod_rewrite.so

    #を外してApache再起動。 http://localhost/ へアクセスするとなんかデザイン変わってる。 cake5.gif

  9. ここらへんからは

    10分で作るCakePHPアプリ アプリケーション編を参照してもらった方がいいかもしれない。

尻切れトンボな感じですがさようなら。

Powered by WordPress | WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in