Initial REST API version 0 alpha
This commit is contained in:
38
apps/rest_api/resources.py
Normal file
38
apps/rest_api/resources.py
Normal file
@@ -0,0 +1,38 @@
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
from djangorestframework.resources import ModelResource
|
||||
|
||||
from documents.models import Document
|
||||
from converter.exceptions import UnknownFileFormat, UnkownConvertError
|
||||
|
||||
|
||||
class DocumentResourceSimple(ModelResource):
|
||||
model = Document
|
||||
fields = ('url', 'pk', 'document_type', 'uuid', 'date_added', 'description', 'tags', 'comments', 'expensive_methods', 'files')
|
||||
|
||||
def files(self, instance):
|
||||
return [
|
||||
{
|
||||
'version': 1,
|
||||
'mimetype': instance.file_mimetype,
|
||||
'encoding': instance.file_mime_encoding,
|
||||
'filename': instance.get_fullname(),
|
||||
'date_updated': instance.date_updated,
|
||||
'checksum': instance.checksum,
|
||||
'size': instance.size,
|
||||
'exists': instance.exists(),
|
||||
'pages': [
|
||||
{
|
||||
'page_numer': page.page_number,
|
||||
'page_label': page.page_label,
|
||||
#'content':
|
||||
}
|
||||
for page in instance.documentpage_set.all()
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
def expensive_methods(self, instance):
|
||||
return [
|
||||
{'is_zoomable': reverse('documents-expensive-is_zoomable', args=[instance.pk])},
|
||||
]
|
||||
Reference in New Issue
Block a user