2018-06-10 08:39:47 +00:00
|
|
|
from rest_framework import mixins, viewsets
|
2018-02-20 23:05:07 +00:00
|
|
|
|
2018-06-10 08:55:16 +00:00
|
|
|
from . import filters, models, serializers
|
2018-02-20 23:05:07 +00:00
|
|
|
|
|
|
|
|
|
|
|
class ImportRequestViewSet(
|
2018-06-09 13:36:16 +00:00
|
|
|
mixins.CreateModelMixin,
|
|
|
|
mixins.RetrieveModelMixin,
|
|
|
|
mixins.ListModelMixin,
|
|
|
|
viewsets.GenericViewSet,
|
|
|
|
):
|
2018-02-20 23:05:07 +00:00
|
|
|
|
|
|
|
serializer_class = serializers.ImportRequestSerializer
|
2018-02-22 22:33:59 +00:00
|
|
|
queryset = (
|
2018-06-09 13:36:16 +00:00
|
|
|
models.ImportRequest.objects.all().select_related().order_by("-creation_date")
|
|
|
|
)
|
2018-02-22 22:33:59 +00:00
|
|
|
filter_class = filters.ImportRequestFilter
|
2018-06-09 13:36:16 +00:00
|
|
|
ordering_fields = ("id", "artist_name", "creation_date", "status")
|
2018-02-20 23:05:07 +00:00
|
|
|
|
|
|
|
def perform_create(self, serializer):
|
|
|
|
return serializer.save(user=self.request.user)
|
|
|
|
|
|
|
|
def get_serializer_context(self):
|
|
|
|
context = super().get_serializer_context()
|
|
|
|
if self.request.user.is_authenticated:
|
2018-06-09 13:36:16 +00:00
|
|
|
context["user"] = self.request.user
|
2018-02-20 23:05:07 +00:00
|
|
|
return context
|