add /item/comment endpoint and prefetch related models
This commit is contained in:
parent
52cf00ef9c
commit
c03d298a58
4 changed files with 66 additions and 11 deletions
|
@ -21,7 +21,13 @@ from tickets.shared_serializers import RelationSerializer
|
|||
|
||||
class IssueViewSet(viewsets.ModelViewSet):
|
||||
serializer_class = IssueSerializer
|
||||
queryset = IssueThread.objects.all().prefetch_related('state_changes', 'comments', 'emails', 'emails__attachments', 'assignments', 'item_relation_changes', 'shipping_vouchers')
|
||||
|
||||
def get_queryset(self):
|
||||
queryset = IssueThread.objects.all()
|
||||
serializer = self.get_serializer_class()
|
||||
if hasattr(serializer, 'Meta') and hasattr(serializer.Meta, 'prefetch_related_fields'):
|
||||
queryset = queryset.prefetch_related(*serializer.Meta.prefetch_related_fields)
|
||||
return queryset
|
||||
|
||||
|
||||
class RelationViewSet(viewsets.ModelViewSet):
|
||||
|
@ -171,5 +177,5 @@ urlpatterns = ([
|
|||
re_path(r'^tickets/(?P<pk>\d+)/comment/$', add_comment, name='add_comment'),
|
||||
re_path(r'^(?P<event_slug>[\w-]+)/tickets/manual/$', manual_ticket, name='manual_ticket'),
|
||||
re_path(r'^(?P<event_slug>[\w-]+)/tickets/(?P<query>[-A-Za-z0-9+/]*={0,3})/$', search_issues,
|
||||
name='search_issues'),
|
||||
name='search_issues'),
|
||||
] + router.urls)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue