71 lines
1.8 KiB
Python
Executable File
71 lines
1.8 KiB
Python
Executable File
from django.contrib import admin
|
|
|
|
from models import MetadataType, DocumentType, Document, \
|
|
DocumentTypeMetadataType, DocumentMetadata, DocumentTypeFilename, \
|
|
MetadataIndex, DocumentMetadataIndex, DocumentPage
|
|
|
|
|
|
class MetadataTypeAdmin(admin.ModelAdmin):
|
|
list_display = ('name', 'title', 'default', 'lookup')
|
|
|
|
|
|
class MetadataIndexInline(admin.StackedInline):
|
|
model = MetadataIndex
|
|
extra = 1
|
|
classes = ('collapse-open',)
|
|
allow_add = True
|
|
|
|
|
|
class DocumentTypeMetadataTypeInline(admin.StackedInline):
|
|
model = DocumentTypeMetadataType
|
|
extra = 1
|
|
classes = ('collapse-open',)
|
|
allow_add = True
|
|
|
|
|
|
class DocumentTypeFilenameInline(admin.StackedInline):
|
|
model = DocumentTypeFilename
|
|
extra = 1
|
|
classes = ('collapse-open',)
|
|
allow_add = True
|
|
|
|
|
|
class DocumentTypeAdmin(admin.ModelAdmin):
|
|
inlines = [DocumentTypeFilenameInline, DocumentTypeMetadataTypeInline, MetadataIndexInline]
|
|
|
|
|
|
class DocumentMetadataInline(admin.StackedInline):
|
|
model = DocumentMetadata
|
|
extra = 0
|
|
classes = ('collapse-open',)
|
|
allow_add = False
|
|
readonly_fields = ('metadata_type', 'value')
|
|
|
|
|
|
class DocumentMetadataIndexInline(admin.StackedInline):
|
|
model = DocumentMetadataIndex
|
|
extra = 1
|
|
classes = ('collapse-open',)
|
|
allow_add = True
|
|
readonly_fields = ('metadata_index', 'filename')
|
|
|
|
class DocumentPageInline(admin.StackedInline):
|
|
model = DocumentPage
|
|
extra = 1
|
|
classes = ('collapse-open',)
|
|
allow_add = True
|
|
|
|
|
|
class DocumentAdmin(admin.ModelAdmin):
|
|
inlines = [DocumentMetadataInline, DocumentMetadataIndexInline, DocumentPageInline]
|
|
list_display = ('uuid', 'file_filename', 'file_extension')
|
|
|
|
|
|
|
|
|
|
|
|
admin.site.register(MetadataType, MetadataTypeAdmin)
|
|
admin.site.register(DocumentType, DocumentTypeAdmin)
|
|
admin.site.register(Document, DocumentAdmin)
|
|
|