@Djonson86
Нечем похвастаться.

Как указать, чтобы поле updated_at не менялось при выполнении запроса через модель?

Добрый день. Есть задание поменять поле active в таблице users на false, если updated_at больше 3 месяца. Остановился на таком коде:
User::where('active', true)
            ->whereDate('updated_at', '<=', now()->subMonths(3))
            ->update(['active' => false]);

Работает как надо, но обновляется тоже и поле updated_at. Как сделать чтоб поле updated_at не обновлялось при выполнении этого кода? Через DB::table не подходит, надо через модель.
  • Вопрос задан
  • 229 просмотров
Решения вопроса 2
New_Horizons
@New_Horizons
Бред:
Вариант, если не нужно загружать модели в память:
User::where('active', true)
    ->whereDate('updated_at', '<=', now()->subMonths(3))
    ->update(['active' => false, 'updated_at' => \DB::raw('updated_at')]);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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