@lexstile

Как не допускать повторного добавления записей в БД при раскатке?

1. Использую passport, при миграции всегда добавляются 2 клиента в таблицу oauth_clients, как этого избежать?
2. Добавляю тарифы через сиды.
php artisan db:seed
Приходится проверять, а есть ли уже записи в таблице (не очень нравится подход). Нет ли штатных методов проверки или запуска только один раз?
class DatabaseSeeder extends Seeder
{
    public function run()
    {
        $this->call([
            TariffSeeder::class,
        ]);
    }
}

class TariffSeeder extends Seeder
{
    public function run()
    {
        if (Tariff::count()) {
            return;
        }

        $tariffs = collect([...]);

        $tariffs->each(fn($tariff) => Tariff::create($tariff));
    }
}
  • Вопрос задан
  • 123 просмотра
Пригласить эксперта
Ответы на вопрос 1
Fragster
@Fragster
помогло? отметь решением!
Запихай в миграции
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы