Add serializers, document api endpoints, rename url parameter for clarity

This commit is contained in:
Roberto Rosario
2014-07-09 14:24:32 -04:00
parent e60d5fedfa
commit c7a3afc35a
8 changed files with 74 additions and 19 deletions

View File

@@ -10,7 +10,7 @@ from .models import StagingFolder
logger = logging.getLogger(__name__)
class SerializerStagingFolderFile(serializers.Serializer):
class StagingFolderFileSerializer(serializers.Serializer):
url = serializers.SerializerMethodField('get_url')
image_url = serializers.SerializerMethodField('get_image_url')
filename = serializers.CharField(max_length=255)
@@ -22,15 +22,20 @@ class SerializerStagingFolderFile(serializers.Serializer):
return reverse('stagingfolderfile-image-view', args=[obj.staging_folder.pk, obj.encoded_filename], request=self.context.get('request'))
class SerializerStagingFolder(serializers.HyperlinkedModelSerializer):
class StagingFolderSerializer(serializers.HyperlinkedModelSerializer):
files = serializers.SerializerMethodField('get_files')
def get_files(self, obj):
try:
return [SerializerStagingFolderFile(entry, context=self.context).data for entry in obj.get_files()]
return [StagingFolderFileSerializer(entry, context=self.context).data for entry in obj.get_files()]
except Exception as exception:
logger.error('unhandled exception: %s' % exception)
return []
class Meta:
model = StagingFolder
class StagingSourceFileImageSerializer(serializers.Serializer):
status = serializers.CharField()
data = serializers.CharField()