Невозможно ответить на 'passenger__email' в классе tripview
я пытаюсь ответить на поле passenger_email в представлении поездки, но не могу ответить. код моей программы приведен ниже. основная проблема здесь passenger__email
class TripView(viewsets.ReadOnlyModelViewSet):
lookup_field = 'id'
lookup_url_kwarg = 'trip_id'
serializer_class = NestedTripSerializer
permission_classes = (permissions.IsAuthenticated,)
# call only id and status field of trip model
def get_queryset(self):
user = self.request.user
if user.group == 'passenger':
#request to all drivers
passenger_trip = Trip.objects.filter(passenger=user)
#display only id and status field of trip model and user.email
return passenger_trip.values('id', 'status', 'created', 'updated', 'pick_up_address', 'drop_off_address', 'price', 'passenger__email')
return Trip.objects.none()
код ответа на postman находится здесь ниже:-
[ { "id": "412f04aa-3b34-4ee4-a07f-e464cff148c3", "created": "2022-09-12T12:27:31.542074Z", "updated": "2022-09-12T12:27:31.542091Z", "pick_up_address": "pokhara", "drop_off_address": "kathmandu", "price": "20", "статус": "REQUESTED" } ]
**The urls of the code is here below**
app_name = 'taxi'
urlpatterns = [
path('', TripView.as_view({'get': 'list'}), name='trip'),
path('<uuid:trip_id>/', TripView.as_view({'get': 'retrieve'}), name='trip'),
path('create/', CreateTripView.as_view(), name='create_trip'),
]
**the model class is here below**
class Trip(models.Model):
REQUESTED = 'REQUESTED'
ACCEPTED = 'ACCEPTED'
STARTED = 'STARTED'
IN_PROGRESS = 'IN_PROGRESS'
COMPLETED = 'COMPLETED'
STATUSES = (
(REQUESTED, REQUESTED),
(ACCEPTED, ACCEPTED),
(STARTED, STARTED),
(IN_PROGRESS, IN_PROGRESS),
(COMPLETED, COMPLETED),
)
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
pick_up_address = models.CharField(max_length=255)
drop_off_address = models.CharField(max_length=255)
price = models.CharField(max_length=25, null=True)
status = models.CharField(max_length=20, choices=STATUSES, default=REQUESTED)
driver = models.ForeignKey(
settings.AUTH_USER_MODEL,
null=True,
blank=True,
on_delete=models.DO_NOTHING,
related_name='trips_as_driver'
)
passenger = models.ForeignKey(
settings.AUTH_USER_MODEL,
null=True,
blank=True,
on_delete=models.DO_NOTHING,
related_name='trips_as_passenger'
)
def __str__(self):
return f'{self.id}'
def get_absolute_url(self):
return reverse('trip:trip_detail', kwargs={'trip_id': self.id})