caais.admin - Manage CAAIS models in admin site

CAAIS metadata administrator.

class caais.admin.IdentifierInlineAdmin(parent_model, admin_site)

Bases: StackedInline

Admin for editing identifiers inline.

model

alias of Identifier

form

alias of InlineIdentifierForm

max_num = 64
extra = 0
get_queryset(request: HttpRequest) QuerySet

Exclude accession identifiers from the queryset.

property media
class caais.admin.ArchivalUnitInlineAdmin(parent_model, admin_site)

Bases: TabularInline

Admin for editing archival units inline.

model

alias of ArchivalUnit

form

alias of InlineArchivalUnitForm

max_num = 64
extra = 0
property media
class caais.admin.DispositionAuthorityInlineAdmin(parent_model, admin_site)

Bases: TabularInline

Admin for editing disposition authorities inline.

model

alias of DispositionAuthority

form

alias of InlineDispositionAuthorityForm

max_num = 64
extra = 0
property media
class caais.admin.SourceOfMaterialInlineAdmin(parent_model, admin_site)

Bases: StackedInline

Admin for editing source(s) of material inline.

model

alias of SourceOfMaterial

form

alias of InlineSourceOfMaterialForm

min_num = 1
max_num = 64
extra = 0
property media
class caais.admin.PreliminaryCustodialHistoryInlineAdmin(parent_model, admin_site)

Bases: TabularInline

Admin for editing preliminary custodial histories inline.

model

alias of PreliminaryCustodialHistory

form

alias of InlinePreliminaryCustodialHistoryForm

max_num = 64
extra = 0
property media
class caais.admin.ExtentStatementInlineAdmin(parent_model, admin_site)

Bases: StackedInline

Admin for editing extent statements inline.

model

alias of ExtentStatement

form

alias of InlineExtentStatementForm

max_num = 64
min_num = 1
extra = 0
property media
class caais.admin.PreliminaryScopeAndContentInlineAdmin(parent_model, admin_site)

Bases: TabularInline

Admin for editing preliminary scope and contents inline.

model

alias of PreliminaryScopeAndContent

form

alias of InlinePreliminaryScopeAndContentForm

max_num = 64
extra = 0
property media
class caais.admin.LanguageOfMaterialInlineAdmin(parent_model, admin_site)

Bases: TabularInline

Admin for editing language of materials inline.

model

alias of LanguageOfMaterial

form

alias of InlineLanguageOfMaterialForm

max_num = 64
extra = 0
property media
class caais.admin.StorageLocationInlineAdmin(parent_model, admin_site)

Bases: TabularInline

Admin for editing storage locations inline.

model

alias of StorageLocation

form

alias of InlineStorageLocationForm

max_num = 64
extra = 0
property media
class caais.admin.RightsInlineAdmin(parent_model, admin_site)

Bases: StackedInline

Admin for editing rights inline.

model

alias of Rights

form

alias of InlineRightsForm

max_num = 64
extra = 0
property media
class caais.admin.PreservationRequirementsInlineAdmin(parent_model, admin_site)

Bases: StackedInline

Admin for editing preservation requirements inline.

model

alias of PreservationRequirements

form

alias of InlinePreservationRequirementsForm

max_num = 64
extra = 0
property media
class caais.admin.AppraisalInlineAdmin(parent_model, admin_site)

Bases: StackedInline

Admin for editing appraisals inline.

model

alias of Appraisal

form

alias of InlineAppraisalForm

max_num = 64
extra = 0
property media
class caais.admin.AssociatedDocumentationInlineAdmin(parent_model, admin_site)

Bases: StackedInline

Admin for editing associated documentation inline.

model

alias of AssociatedDocumentation

form

alias of InlineAssociatedDocumentationForm

max_num = 64
extra = 0
property media
class caais.admin.GeneralNoteInlineAdmin(parent_model, admin_site)

Bases: TabularInline

Admin for editing general notes inline.

model

alias of GeneralNote

form

alias of InlineGeneralNoteForm

max_num = 64
extra = 0
property media
class caais.admin.MetadataAdmin(model, admin_site)

Bases: ModelAdmin

Main CAAIS metadata model admin. All repeatable fields have an associated Inline admin for editing all metadata at once.

class Media

Bases: object

Static assets for the Metadata admin.

js = ('https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.16/jquery.mask.min.js', 'caais/js/adminChangeForm.js')
css: ClassVar = {'screen': ['caais/css/adminChangeForm.css']}
change_form_template = 'admin/metadata_change_form.html'
form

alias of MetadataForm

list_display: Sequence[str | Callable] = ['accession_title', 'accession_identifier', 'source_name', 'status', 'last_changed']
list_filter: Sequence[str | type[ListFilter] | tuple[str, type[ListFilter]]] = ['status']
search_fields: Sequence[str] = ['identifiers__identifier_value', 'source_of_materials__source_name', 'source_of_materials__contact_name', 'source_of_materials__organization', 'status__name', 'accession_title', 'repository']
inlines: Sequence[type[InlineModelAdmin]] = [<class 'caais.admin.IdentifierInlineAdmin'>, <class 'caais.admin.ArchivalUnitInlineAdmin'>, <class 'caais.admin.DispositionAuthorityInlineAdmin'>, <class 'caais.admin.SourceOfMaterialInlineAdmin'>, <class 'caais.admin.PreliminaryCustodialHistoryInlineAdmin'>, <class 'caais.admin.ExtentStatementInlineAdmin'>, <class 'caais.admin.PreliminaryScopeAndContentInlineAdmin'>, <class 'caais.admin.LanguageOfMaterialInlineAdmin'>, <class 'caais.admin.StorageLocationInlineAdmin'>, <class 'caais.admin.RightsInlineAdmin'>, <class 'caais.admin.PreservationRequirementsInlineAdmin'>, <class 'caais.admin.AppraisalInlineAdmin'>, <class 'caais.admin.AssociatedDocumentationInlineAdmin'>, <class 'caais.admin.GeneralNoteInlineAdmin'>]
actions: Sequence[Callable[[Any, HttpRequest, QuerySet], HttpResponse | None] | str] | None = ['export_caais_csv', 'export_atom_2_6_csv', 'export_atom_2_3_csv', 'export_atom_2_2_csv', 'export_atom_2_1_csv']
source_name(obj: Metadata) str | None

Return a comma-separated list of source names.

last_changed(obj: Metadata) datetime | None

Return the date the metadata was last changed.

render_change_form(request: HttpRequest, context: Mapping[str, Any], add: bool = False, change: bool = False, form_url: str = '', obj: Metadata | None = None) TemplateResponse

Add dates_of_creation_or_revision to the context for the template.

log_change(request: HttpRequest, object: Metadata, message: str) LogEntry

Add a DateOfCreationOrRevision model when a change is made. This method ensures CAAIS compliance by automatically tracking when metadata records are updated through the admin interface.

export_caais_csv(request: HttpRequest, queryset: MetadataQuerySet) HttpResponse

Export CAAIS 1.0 CSV for submissions in the selected queryset.

export_atom_2_6_csv(request: HttpRequest, queryset: MetadataQuerySet) HttpResponse

Export AtoM 2.6 Accession CSV for submissions in the selected queryset.

export_atom_2_3_csv(request: HttpRequest, queryset: MetadataQuerySet) HttpResponse

Export AtoM 2.3 Accession CSV for submissions in the selected queryset.

export_atom_2_2_csv(request: HttpRequest, queryset: MetadataQuerySet) HttpResponse

Export AtoM 2.2 Accession CSV for submissions in the selected queryset.

export_atom_2_1_csv(request: HttpRequest, queryset: MetadataQuerySet) HttpResponse

Export AtoM 2.1 Accession CSV for submissions in the selected queryset.

property media
class caais.admin.TermAdmin(model, admin_site)

Bases: ModelAdmin

Generic administrator for models inheriting from AbstractTerm.

list_display: Sequence[str | Callable] = ['name', 'id']
ordering: Sequence[str] | None = ['name']
property media