Генерация случайных строк сидеры
Можно сделать так, чтобы Laravel генерировал случайные строки для того, чтобы не приходилось придумывать данные для вставки самостоятельно. Для этого используется специальный класс Str
, который нужно подключить:
database/seeders/DatabaseSeeder.php<?php
use Illuminate\Support\Str; // подключаем фасад Str
class DatabaseSeeder extends Seeder
{
public function run()
{
}
}
У этого класса есть статический метод random
, генерирующий случайную строку заданной длины. Воспользуемся этим методом для генерации вставляемых строк:
database/seeders/DatabaseSeeder.php<?php
use Illuminate\Support\Facades\DB; // подключаем фасад DB
use Illuminate\Support\Str; // подключаем фасад Str
class DatabaseSeeder extends Seeder
{
public function run()
{
DB::table('posts')->insert([
'title' => Str::random(10),
'slug' => Str::random(10),
'text' => Str::random(50),
]);
}
}