У объекта 'QuerySet' нет атрибута 'date_start'. Django rest framework
Я новичок в Django. В моем проекте я хочу отфильтровать все комнаты со статусом available, затем я хочу, чтобы start_date была обновлена до текущего времени. Но я получаю следующую ошибку:
'QuerySet' object has no attribute 'start_date'
У меня есть следующий класс в models.py:
class RoomStatus(models.Model):
room = models.ForeignKey(Room, on_delete=models.DO_NOTHING)
class RoomStatusChoices(models.IntegerChoices):
AVAILABLE = 1
UNAVAILABLE = 2
room_status =
models.SmallIntegerField(choices=RoomStatusChoices.choices,
default=RoomStatusChoices.AVAILABLE)
start_date = models.DateTimeField(auto_now=True)
В serializers.py я написал обновление с этим кодом
available_rooms = RoomStatus.objects.filter(room=room,
room_status=RoomStatusChoices.AVAILABLE)
print(available_rooms)
available_rooms.start_date = max(available_rooms.start_date, datetime.now())
Результатом print(available_rooms) является <QuerySet []>
Может ли кто-нибудь помочь мне? Спасибо, Индванс.
from django.db.models import Max
start_date_max = available_rooms.aggregate(Max('start_date'))
Теперь star_date_max
будет декарточка типа {'start_date__max': date(.....)}
;подтвердите это... распечатайте ее и посмотрите.
теперь установим все start_date
объекты в наборе запросов...
new_start_date = star_date_max["start_date__max"]
available_rooms.update(start_date=new_start_date)
должен выполнить работу.