Fix url field of source api endpoints not returning a FQDN

This commit is contained in:
Roberto Rosario
2014-07-08 16:16:37 -04:00
parent 3ff484a263
commit fc88db50f5
2 changed files with 4 additions and 4 deletions

View File

@@ -26,7 +26,7 @@ logger = logging.getLogger(__name__)
class APIStagingSourceFileView(generics.GenericAPIView):
def get(self, request, staging_folder_pk, filename):
staging_folder = get_object_or_404(StagingFolder, pk=staging_folder_pk)
return Response(SerializerStagingFolderFile(staging_folder.get_file(filename)).data)
return Response(SerializerStagingFolderFile(staging_folder.get_file(encoded_filename=filename), context={'request': request}).data)
class APIStagingSourceListView(generics.ListAPIView):

View File

@@ -17,10 +17,10 @@ class SerializerStagingFolderFile(serializers.Serializer):
filename = serializers.CharField(max_length=255)
def get_url(self, obj):
return reverse('stagingfolderfile-detail', args=[obj.staging_folder.pk, obj.filename], request=self.context.get('request'))
return reverse('stagingfolderfile-detail', args=[obj.staging_folder.pk, obj.encoded_filename], request=self.context.get('request'))
def get_image_url(self, obj):
return reverse('stagingfolderfile-image-view', args=[obj.staging_folder.pk, obj.filename], request=self.context.get('request'))
return reverse('stagingfolderfile-image-view', args=[obj.staging_folder.pk, obj.encoded_filename], request=self.context.get('request'))
class SerializerStagingFolder(serializers.HyperlinkedModelSerializer):
@@ -28,7 +28,7 @@ class SerializerStagingFolder(serializers.HyperlinkedModelSerializer):
def get_files(self, obj):
try:
return [SerializerStagingFolderFile(entry).data for entry in obj.get_files()]
return [SerializerStagingFolderFile(entry, context=self.context).data for entry in obj.get_files()]
except Exception as exception:
logger.error('unhandled exception: %s' % exception)
return []