Как удалять по истечению определенного времени данные из БД Django
Как удалить из БД данные в Django по истечению определенные даты У меня есть модель где есть ячейки "прибытия" и "отбытия" и мне надо когда придёт время отбытия чтоб из бд автоматом удалялись данные
Логика может быть такой. Получаете текущую дату с помощью модуля datetime:
from datetime import datetime
today = datetime.today().strftime('%Y-%m-%d')
print(today)
'2022-05-05'
Получаете объект например по id класса Registration(), извлекаете поле leaved_date.
ob_ject = Registration.objects.get(id=pk)
leaved_date = ob_ject.leaved_date
print(type(leaved_date))
И если тип переменной leaved_date это str,
если нет нужно конвертнуть в строку, можно написать условие:
if today == leaved_date:
ob_ject.delete()
В папке вашего приложения создайте файл urls.py
urlpatterns = [
path("get/by/<int:pk>/, name='my page')]
views.py
def to_get_by_id(request, pk):
ob_ject = Registration.objects.get(id=pk)
leaved_date = ob_ject.leaved_date
print(type(leaved_date))
.....
ПОЧИТАЙТЕ Django 2 в примерах. Антонио Меле.
Начните с 40 стр.