まず、Factoryを使用してモデルにテストデータを生成する方法を見てみましょう。まず、database/factories
ディレクトリにファクトリファイルを作成します。例えば、UserFactory.php
という名前のファイルを作成します。
use Faker\Generator as Faker;
$factory->define(App\User::class, function (Faker $faker) {
return [
'name' => $faker->name,
'email' => $faker->unique()->safeEmail,
'password' => bcrypt('password'),
];
});
上記の例では、User
モデルのためのファクトリを定義しています。name
、email
、password
のテストデータを生成するために、Fakerライブラリを使用しています。
次に、Tinkerを使用してテストデータをデータベースに挿入する方法を見てみましょう。ターミナルで以下のコマンドを実行します。
php artisan tinker
Tinkerが起動したら、以下のようにFactoryを使用してモデルのインスタンスを生成し、データベースに保存することができます。
$user = factory(App\User::class)->create();
上記のコードでは、User
モデルのインスタンスを生成し、create()
メソッドを使用してデータベースに保存しています。
FactoryとTinkerを組み合わせることで、簡単にテストデータを生成し、データベースに挿入することができます。これは、テストやデータベースの初期化に役立ちます。