Введение в фабрики моделей Laravel
Мы с вами уже наполняли таблицы
через сидеры: вручную, через
Str::random и через
Faker.
Это удобно, пока данных немного
и вставка идет через DB::insert.
Когда работают с моделями Eloquent,
удобнее фабрики. Фабрика
описывает, какие значения должны
быть у новой записи модели. Файлы
фабрик лежат в папке
database/factories/.
Фабрика не сохраняет данные сама
по себе - она возвращает готовый
набор атрибутов или объект модели.
Сохранение вызывают отдельно:
create или make.
Пример вызова для модели User:
<?php
use App\Models\User;
User::factory()->create();
User::factory()->count(10)->create();
?>
Фабрики используют Faker внутри
метода definition, поэтому
данные получаются правдоподобными.
В этом разделе разберем создание
фабрики, состояния, последовательности,
связанные записи и вызов из сидеров.
Раздел идет сразу после «Коллекций» - логичное продолление работы с данными после базового учебника по Eloquent и сидерам.
Чем фабрика отличается от прямой
вставки через DB::insert
в сидере?
В какой папке Laravel хранит файлы фабрик?