Skip to content
Snippets Groups Projects
Commit 5a16c548 authored by Tobias Ørstad's avatar Tobias Ørstad
Browse files

Refactor user/offerlist

parent 90318c09
No related branches found
No related tags found
1 merge request!31Complete exercise 3
Pipeline #129181 passed
...@@ -97,32 +97,28 @@ class OfferList( ...@@ -97,32 +97,28 @@ class OfferList(
serializer.save(owner=self.request.user) serializer.save(owner=self.request.user)
def get_queryset(self): def get_queryset(self):
result = Offer.objects.none() qs = Offer.objects.none()
if self.request.user: if self.request.user:
qs = Offer.objects.filter( qs = Offer.objects.filter(
Q(owner=self.request.user) | Q(recipient=self.request.user) Q(owner=self.request.user) | Q(recipient=self.request.user)
).distinct() ).distinct()
qp = self.request.query_params
user = self.request.user
# filtering by status (if provided) # filtering by status (if provided)
status = qp.get("status", None) status = self.request.query_params.get("status", None)
if status is not None and self.request is not None: if status is not None:
qs = qs.filter(status=status) qs = qs.filter(status=status)
if qp.get("status", None) is None:
qs = Offer.objects.filter(Q(owner=user)).distinct()
# filtering by category (sent or received) # filtering by category (sent or received)
category = qp.get("category", None) category = self.request.query_params.get("category", None)
if category is not None and qp is not None: if category is not None:
if category == "sent": if category == "sent":
qs = qs.filter(owner=user) qs = qs.filter(owner=self.request.user)
elif category == "received": elif category == "received":
qs = qs.filter(recipient=user) qs = qs.filter(recipient=self.request.user)
return qs
else: return qs
return result
class OfferDetail( class OfferDetail(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment