You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
920 B
30 lines
920 B
from rest_framework.renderers import JSONRenderer
|
|
from rest_framework.response import Response
|
|
from rest_framework.views import APIView
|
|
|
|
from storage.models import File, Comment
|
|
from storage.serializers import FileSerializer, CommentSerializer
|
|
|
|
|
|
class FileDetailView(APIView):
|
|
renderer_classes = (JSONRenderer,)
|
|
status_code = 200
|
|
|
|
@staticmethod
|
|
def get(request, pk):
|
|
try:
|
|
return Response(FileSerializer(File.objects.get(key=pk)).data, status=200)
|
|
except File.DoesNotExist:
|
|
return Response("File not found", status=404)
|
|
|
|
|
|
class CommentDetailView(APIView):
|
|
renderer_classes = (JSONRenderer,)
|
|
status_code = 200
|
|
|
|
@staticmethod
|
|
def get(request, pk):
|
|
try:
|
|
return Response(CommentSerializer(Comment.objects.get(key=pk)).data, status=200)
|
|
except Comment.DoesNotExist:
|
|
return Response("Comment not found", status=404) |