kopia lustrzana https://dev.funkwhale.audio/funkwhale/funkwhale
				
				
				
			
		
			
				
	
	
		
			37 wiersze
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
			
		
		
	
	
			37 wiersze
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
| from rest_framework import generics, mixins, viewsets
 | |
| from rest_framework import status
 | |
| from rest_framework.response import Response
 | |
| from rest_framework.decorators import detail_route
 | |
| 
 | |
| from funkwhale_api.music.views import SearchMixin
 | |
| 
 | |
| from . import filters
 | |
| from . import models
 | |
| from . import serializers
 | |
| 
 | |
| 
 | |
| class ImportRequestViewSet(
 | |
|         SearchMixin,
 | |
|         mixins.CreateModelMixin,
 | |
|         mixins.RetrieveModelMixin,
 | |
|         mixins.ListModelMixin,
 | |
|         viewsets.GenericViewSet):
 | |
| 
 | |
|     serializer_class = serializers.ImportRequestSerializer
 | |
|     queryset = (
 | |
|         models.ImportRequest.objects.all()
 | |
|               .select_related()
 | |
|               .order_by('-creation_date'))
 | |
|     search_fields = ['artist_name', 'album_name', 'comment']
 | |
|     filter_class = filters.ImportRequestFilter
 | |
|     ordering_fields = ('id', 'artist_name', 'creation_date', 'status')
 | |
| 
 | |
|     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:
 | |
|             context['user'] = self.request.user
 | |
|         return context
 |