Windows7 / PHP5.4 / Laravel4でローカル環境で動作させてます。
Composerのインストール
Composerはライブラリを便利に管理してくるやつです。
Laravelを動かすのに必要なので入っていなかったら下記URLからダウンロードして入れておきましょう。
Composer
Windowsならインストーラーがありますので、ぽちぽちするだけで簡単にインストールできます。
ComposerからLaravelのインストール
Composerをダウンロードしたら、コマンドプロンプト(ターミナル)で「cd」コマンドで適当なディレクトリに移動して、
composer create-project laravel/laravel TestProject --prefer-dist
Laravelのプロジェクトが作成されますので、「cd TestProject」で移動したら下記でライブラリのアップデートをします。
composer update
設定ファイルの編集
「app/config/app.php」が設定ファイルになっています。
とりあえず下記のようにします。
app/config/app.php
'timezone' => 'Asia/Tokyo', ・・・ 'locale' => 'ja',
「key」の部分は下記を実行することでランダムな値を設定してくれます。
php artisan key:generate
データベースの設定
データベースを設定するファイルは「app/config/database.php」です。
「connection」の部分を環境に合わせて設定しましょう。
app/config/database.php
'connections' => array( ・・・ 'mysql' => array( 'driver' => 'mysql', 'host' => 'localhost', 'database' => 'laravel_test', 'username' => 'user', 'password' => 'pass', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', ),
ジェネレータープラグインの導入
Laravelは標準ではScaffold的な機能がないので「Laravel-4-Generators」というプラグインを追加します。
「composer.json」の「require」の部分を下記のようにします。
composer.json
"require": { "laravel/framework": "4.0.*", "way/generators": "dev-master" },
「composer update」でアップデートしましょう。
composer update
「app/config/app.php」の「providers」に下記を追加することでプラグインが使用できるようになります。
app/config/app.php
'providers' => array( ・・・ 'Way\Generators\GeneratorsServiceProvider' ),
下記で「generate」コマンドが追加されているのを確認します。
php artisan
scaffoldでひな形の作成
インストールした「Laravel-4-Generators」を使用してアプリケーションのひな形を作成します。
php artisan generate:scaffold post --fields="title:string, body:text"
これで「models」「controllers」「views」にひな形が一気に作成されます。
次に「migrate」でテーブルの作成です。
php artisan migrate
最後に「app/routes.php」に下記を追記してルーティングの設定をします。
app/routes.php
Route::resource('posts', 'PostsController');
動作確認
PHPのビルトインサーバーを起動してみましょう。
Laravelあらかじめサーバーの設定がしてあるっぽいので下記コマンドを実行するだけです。
DBをMySQLに設定したのでMySQLも起動しておきます。
php artisan serve
「Laravel development server started on http://localhost:8000」と表示されたら「http://localhost:8000/posts」にアクセスします。
「Add new post」で適当に入力してみましょう。
動きましたね!
まだまださわり程度ですが、結構いいかんじですね。でもエラーわかりずらい気がしてます。