У меня есть методы, где я могу soft delete
мою модель, restore
их и hard delete
(стереть из базы данных) тему,
Пока все в порядке, кроме того, что я хочу, чтобы это было жесткое удаление после 30 days
передачи из soft delete
информации, таким образом, даже если администратор забудет жестко удалить модели, оно будет автоматически удалено через 30 дней .
Вот мои коды:
soft delete
public function destroy($id)
{
$user = User::findOrFail($id);
$user->delete();
Mail::to($user->email)->send(new adminsoftdeleteduser($user));
return redirect()->route('users.index')->with('success', 'User successfully deleted.');
}
restore
public function restore($id)
{
$user = User::onlyTrashed()->where('id', $id)->restore();
// Mail::to($user->email)->send(new adminrestoreduser($user));
return redirect()->route('users.index')->with('success', 'User successfully restored.');
}
hard delete
public function forcedelete($id)
{
$user = User::where('id', $id)->forcedelete();
Storage::delete($user->image);
return redirect()->route('users.index')->with('success', 'User Permanently deleted.');
}
Вопрос
- что мне добавить к моей функции
hard delete
, чтобы удалить мою
модель после 30 дней deleted_at
данных столбца?
Обновление
Я пробовал расписание по расписанию, и поскольку я не могу использовать cron job для его проверки, я использовал php artisan schedule:run
, и вот результат, который я получил: