При разработке приложений с помощью Laravel часто необходимо заполнить базу данных тестовыми или фиктивными данными. Именно здесь в игру вступают раздающие базы данных Laravel. Сидеры позволяют вам определять образцы данных, которые можно легко вставлять в таблицы базы данных. В этой статье мы рассмотрим различные методы создания раздающих баз данных в Laravel, предоставив разговорные объяснения и примеры кода, чтобы сделать этот процесс понятным и простым.
Метод 1: использование команды Artisan
Интерфейс командной строки Artisan в Laravel предоставляет удобный способ создания сеялок. Откройте терминал, перейдите в каталог проекта Laravel и выполните следующую команду:
php artisan make:seeder UsersTableSeeder
Эта команда создаст новый класс сеялки с именем UsersTableSeederвнутри каталога database/seeders.
Метод 2: определение исходных данных
После того как вы создали класс сеялки, откройте его и определите свои начальные данные внутри метода run. Допустим, мы хотим заполнить таблицу usersфиктивными данными. Вот пример:
use Illuminate\Database\Seeder;
use App\Models\User;
class UsersTableSeeder extends Seeder
{
public function run()
{
User::create([
'name' => 'John Doe',
'email' => 'johndoe@example.com',
'password' => bcrypt('secret'),
]);
User::create([
'name' => 'Jane Smith',
'email' => 'janesmith@example.com',
'password' => bcrypt('password'),
]);
// Add more dummy data as needed...
}
}
Метод 3: заполнение нескольких таблиц
Если вам нужно заполнить несколько таблиц одновременно, вы можете вызвать другие сеялки в вашем основном классе сеялки. Например, предположим, что у нас есть таблица postsи мы хотим заполнить ее вместе с таблицей users:
public function run()
{
$this->call([
UsersTableSeeder::class,
PostsTableSeeder::class,
]);
}
Метод 4. Запуск сеялки
После того как вы определили сеялки, вы можете запустить их с помощью команды Artisan:
php artisan db:seed
Эта команда выполнит все раздающие, зарегистрированные в классе DatabaseSeeder, который по умолчанию расположен в каталоге database/seeders.
В этой статье мы рассмотрели несколько методов создания раздающих баз данных в Laravel. Мы узнали, как создавать сеялку с помощью команды Artisan, определять начальные данные внутри класса сеялки, заполнять несколько таблиц одновременно и запускать сеялки с помощью интерфейса командной строки Artisan. Используя мощные функции раздачи Laravel, вы можете легко заполнить свою базу данных тестовыми данными и оптимизировать процесс разработки.