Генерация имени через Faker в Laravel
Поле name у пользователя
должно выглядеть как настоящее
имя, а не набор букв из
Str::random. Метод
name возвращает
правдоподобное имя и фамилию.
Сначала посмотрим значение в контроллере:
<?php
namespace App\Http\Controllers;
class UserController extends Controller
{
public function index()
{
dump(fake()->name());
dump(fake()->name());
dump(fake()->name());
}
}
?>
Теперь подставим имя в сидер.
Файл database/seeders/DatabaseSeeder.php -
в метод run:
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class DatabaseSeeder extends Seeder
{
public function run(): void
{
DB::table('users')->insert([
'name' => fake()->name(),
'email' => 'test@example.com',
]);
}
}
?>
Email пока задали строкой - его генерацию разберём в следующем уроке. Выполним сид:
php artisan db:seed
В таблице users появится
запись с именем от Faker.
Проверьте в
PMA.
Выведите три разных значения
fake()->name() через
dump.
В DatabaseSeeder
вставьте юзера с именем
от Faker.