8月 242014
 

こんばんは。ファガイです。
本日は、Laravel4の初期値設定クラスのSeederに付いて少しまとめます。

基本的な使用方法

Seederの使い方はこのような形になります。

  1. DatabaseSeederを継承して専用のSeederクラスを作る
  2. そのSeederにrunメソッドを実装する(レコードを追加する処理)
  3. DatabaseSeederのrun内にてcallメソッドを記載
  4. コマンドを打つ

専用のSeederクラスを作る

今回は例としてUserモデルにデータを追加するUserDatabaseSeederを作ります。

<?php

class UserSeeder extends DatabaseSeeder
{
    public function run()
    {
        $users = [
            [
                "email" => "example@example.com",
                "password" => Hash::make("password")
            ]
        ];

        foreach($users as $user)
        {
            User::create($user);
        }
    }
}

こんな感じですね。

DatabaseSeederのrunメソッド内にcallを追加

<?php

class DatabaseSeeder extends Seeder
{
    public function run()
    {
        Eloquent::unguard();

        $this->call('UserSeeder'); // ←を追加
    }
}

コマンドを打つ

composer dump-autoload
php artisan db:seed

まとめ

seederはデフォルトユーザを作ったりする上で便利。
よくコマンドを忘れるのでメモ代わり。

今回は、laravel4 CookBookの方を参考にさせていただきました。

ではではー。

Pocket

 Posted by at 1:21 AM

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*