server/python/django2/renkanmanager/api/views.py
changeset 619 d427a6db1902
parent 618 3051b847c124
child 626 112912309726
equal deleted inserted replaced
618:3051b847c124 619:d427a6db1902
    32 class RenkanList(APIView):
    32 class RenkanList(APIView):
    33     """
    33     """
    34         View for listing renkans or posting new renkan
    34         View for listing renkans or posting new renkan
    35     """
    35     """
    36 
    36 
    37     queryset = Renkan.objects
    37     queryset = Renkan.objects.select_related('current_revision')
    38 
    38 
    39     def get(self, request, workspace_guid='', format=None):
    39     def get(self, request, workspace_guid='', format=None):
    40         if workspace_guid == '':
    40         if workspace_guid == '':
    41             renkans = self.queryset.all()
    41             renkans = self.queryset.all()
    42         else:
    42         else:
    56             return Response({'detail': 'Source renkan guid %s or source revision guid %s not correctly formatted'%(source_revision_guid_str, source_revision_guid_str)}, status=status.HTTP_400_BAD_REQUEST)
    56             return Response({'detail': 'Source renkan guid %s or source revision guid %s not correctly formatted'%(source_revision_guid_str, source_revision_guid_str)}, status=status.HTTP_400_BAD_REQUEST)
    57 
    57 
    58         source_revision = None
    58         source_revision = None
    59         if source_renkan_guid is not None:
    59         if source_renkan_guid is not None:
    60             try:
    60             try:
    61                 source_renkan=Renkan.objects.get(renkan_guid=source_renkan_guid)
    61                 source_renkan=Renkan.objects.select_related('current_revision').get(renkan_guid=source_renkan_guid)
    62             except Renkan.DoesNotExist:
    62             except Renkan.DoesNotExist:
    63                 return Response({'detail': 'Source renkan %s does not exist'%source_renkan_guid}, status=status.HTTP_404_NOT_FOUND)
    63                 return Response({'detail': 'Source renkan %s does not exist'%source_renkan_guid}, status=status.HTTP_404_NOT_FOUND)
    64             source_revision = source_renkan.current_revision
    64             source_revision = source_renkan.current_revision
    65         elif source_revision_guid is not None:
    65         elif source_revision_guid is not None:
    66             try:
    66             try:
    97 class RenkanDetail(APIView):
    97 class RenkanDetail(APIView):
    98     """
    98     """
    99         View for retrieving, updating or deleting a single renkan
    99         View for retrieving, updating or deleting a single renkan
   100     """
   100     """
   101     lookup_field = "renkan_guid"
   101     lookup_field = "renkan_guid"
   102     queryset = Renkan.objects
   102     queryset = Renkan.objects.select_related('current_revision')
   103 
   103 
   104     def get_object(self, renkan_guid):
   104     def get_object(self, renkan_guid):
   105         try:
   105         try:
   106             renkan_uuid = uuid.UUID(renkan_guid)
   106             renkan_uuid = uuid.UUID(renkan_guid)
   107         except:
   107         except: