caais.forms - Forms for CAAIS metadata models

class caais.forms.CaaisModelForm(*args, **kwargs)

Bases: ModelForm

Form for CAAIS models. Automatically adds term help_text on all term fields since it is not populated by default.

Allows the specification of ‘required’ and ‘not_required’ fields to override the default form behaviour.

Also allows the specification of ‘disabled’ fields to disable specific fields.

base_fields = {}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.MetadataForm(*args, **kwargs)

Bases: CaaisModelForm

Form for Metadata model.

class Meta

Bases: object

MetadataForm Meta class.

model

alias of Metadata

fields = ('accession_title', 'date_of_materials', 'date_is_approximate', 'accession_identifier', 'repository', 'acquisition_method', 'status', 'rules_or_conventions', 'language_of_accession_record')
required = ('accession_title', 'date_of_materials', 'accession_identifier')
not_required = ('acquisition_method', 'status')
widgets: ClassVar = {'acquisition_method': <django.forms.widgets.Select object>, 'date_is_approximate': <class 'caais.widgets.DateIsApproximateWidget'>, 'date_of_materials': <class 'caais.widgets.DateOfMaterialsWidget'>, 'status': <django.forms.widgets.Select object>}
DATE_REGEX = '^(?P<start_date>\\d{4}-\\d{2}-\\d{2})(?:\\s-\\s(?P<end_date>\\d{4}-\\d{2}-\\d{2}))?$'
clean() dict

Form date as approximate if user chose to mark the date as approximate.

save(commit: bool = True) Metadata

Save the accession identifier input as an Identifier on the metadata object.

The Identifier is given the reserved type identified by ACCESSION_IDENTIFIER_TYPE.

base_fields = {'accession_identifier': <django.forms.fields.CharField object>, 'accession_title': <django.forms.fields.CharField object>, 'acquisition_method': <django.forms.models.ModelChoiceField object>, 'date_is_approximate': <django.forms.fields.BooleanField object>, 'date_of_materials': <django.forms.fields.CharField object>, 'language_of_accession_record': <django.forms.fields.CharField object>, 'repository': <django.forms.fields.CharField object>, 'rules_or_conventions': <django.forms.fields.CharField object>, 'status': <django.forms.models.ModelChoiceField object>}
declared_fields = {'accession_identifier': <django.forms.fields.CharField object>}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineIdentifierForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of Identifier instances.

class Meta

Bases: object

Meta options for the form.

model

alias of Identifier

fields = '__all__'
required = ('identifier_value',)
widgets: ClassVar = {'identifier_note': <django.forms.widgets.Textarea object>}
clean() dict

Don’t allow a duplicate accession identifier to be specified.

base_fields = {'identifier_note': <django.forms.fields.CharField object>, 'identifier_type': <django.forms.fields.CharField object>, 'identifier_value': <django.forms.fields.CharField object>, 'metadata': <django.forms.models.ModelChoiceField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineArchivalUnitForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of ArchivalUnit instances.

class Meta

Bases: object

Meta options for the form.

model

alias of ArchivalUnit

fields = '__all__'
widgets: ClassVar = {'archival_unit': <django.forms.widgets.Textarea object>}
base_fields = {'archival_unit': <django.forms.fields.CharField object>, 'metadata': <django.forms.models.ModelChoiceField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineDispositionAuthorityForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of DispositionAuthority instances.

class Meta

Bases: object

Meta options for the form.

model

alias of DispositionAuthority

fields = '__all__'
widgets: ClassVar = {'disposition_authority': <django.forms.widgets.Textarea object>}
base_fields = {'disposition_authority': <django.forms.fields.CharField object>, 'metadata': <django.forms.models.ModelChoiceField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineSourceOfMaterialForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of SourceOfMaterial instances.

class Meta

Bases: object

Meta options for the form.

model

alias of SourceOfMaterial

fields = '__all__'
required = ('source_name', 'email_address')
not_required = ('phone_number', 'source_type', 'source_role', 'source_confidentiality')
widgets: ClassVar = {'source_confidentiality': <django.forms.widgets.Select object>, 'source_note': <django.forms.widgets.Textarea object>, 'source_role': <django.forms.widgets.Select object>, 'source_type': <django.forms.widgets.Select object>}
base_fields = {'address_line_1': <django.forms.fields.CharField object>, 'address_line_2': <django.forms.fields.CharField object>, 'city': <django.forms.fields.CharField object>, 'contact_name': <django.forms.fields.CharField object>, 'country': <django_countries.fields.LazyTypedChoiceField object>, 'email_address': <django.forms.fields.EmailField object>, 'job_title': <django.forms.fields.CharField object>, 'metadata': <django.forms.models.ModelChoiceField object>, 'organization': <django.forms.fields.CharField object>, 'phone_number': <django.forms.fields.RegexField object>, 'postal_or_zip_code': <django.forms.fields.CharField object>, 'region': <django.forms.fields.CharField object>, 'source_confidentiality': <django.forms.models.ModelChoiceField object>, 'source_name': <django.forms.fields.CharField object>, 'source_note': <django.forms.fields.CharField object>, 'source_role': <django.forms.models.ModelChoiceField object>, 'source_type': <django.forms.models.ModelChoiceField object>}
declared_fields = {'country': <django_countries.fields.LazyTypedChoiceField object>, 'email_address': <django.forms.fields.EmailField object>, 'phone_number': <django.forms.fields.RegexField object>}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlinePreliminaryCustodialHistoryForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of PreliminaryCustodialHistory instances.

class Meta

Bases: object

Meta options for the form.

model

alias of PreliminaryCustodialHistory

fields = '__all__'
widgets: ClassVar = {'preliminary_custodial_history': <django.forms.widgets.Textarea object>}
base_fields = {'metadata': <django.forms.models.ModelChoiceField object>, 'preliminary_custodial_history': <django.forms.fields.CharField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineExtentStatementForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of ExtentStatement instances.

class Meta

Bases: object

Meta options for the form.

model

alias of ExtentStatement

fields = '__all__'
required = ('quantity_and_unit_of_measure',)
not_required = ('extent_type', 'content_type', 'carrier_type')
widgets: ClassVar = {'carrier_type': <django.forms.widgets.Select object>, 'content_type': <django.forms.widgets.Select object>, 'extent_note': <django.forms.widgets.Textarea object>, 'extent_type': <django.forms.widgets.Select object>, 'quantity_and_unit_of_measure': <django.forms.widgets.Textarea object>}
base_fields = {'carrier_type': <django.forms.models.ModelChoiceField object>, 'content_type': <django.forms.models.ModelChoiceField object>, 'extent_note': <django.forms.fields.CharField object>, 'extent_type': <django.forms.models.ModelChoiceField object>, 'metadata': <django.forms.models.ModelChoiceField object>, 'quantity_and_unit_of_measure': <django.forms.fields.CharField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlinePreliminaryScopeAndContentForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of PreliminaryScopeAndContent instances.

class Meta

Bases: object

Meta options for the form.

model

alias of PreliminaryScopeAndContent

fields = '__all__'
widgets: ClassVar = {'preliminary_scope_and_content': <django.forms.widgets.Textarea object>}
base_fields = {'metadata': <django.forms.models.ModelChoiceField object>, 'preliminary_scope_and_content': <django.forms.fields.CharField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineLanguageOfMaterialForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of LanguageOfMaterial instances.

class Meta

Bases: object

Meta options for the form.

model

alias of LanguageOfMaterial

fields = '__all__'
widgets: ClassVar = {'language_of_material': <django.forms.widgets.Textarea object>}
base_fields = {'language_of_material': <django.forms.fields.CharField object>, 'metadata': <django.forms.models.ModelChoiceField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineStorageLocationForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of StorageLocation instances.

class Meta

Bases: object

Meta options for the form.

model

alias of StorageLocation

fields = '__all__'
widgets: ClassVar = {'storage_location': <django.forms.widgets.Textarea object>}
base_fields = {'metadata': <django.forms.models.ModelChoiceField object>, 'storage_location': <django.forms.fields.CharField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineRightsForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of Rights instances.

class Meta

Bases: object

Meta options for the form.

model

alias of Rights

fields = '__all__'
required = ('rights_value',)
not_required = ('rights_type',)
widgets: ClassVar = {'rights_note': <django.forms.widgets.Textarea object>, 'rights_type': <django.forms.widgets.Select object>, 'rights_value': <django.forms.widgets.Textarea object>}
base_fields = {'metadata': <django.forms.models.ModelChoiceField object>, 'rights_note': <django.forms.fields.CharField object>, 'rights_type': <django.forms.models.ModelChoiceField object>, 'rights_value': <django.forms.fields.CharField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlinePreservationRequirementsForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of PreservationRequirements instances.

class Meta

Bases: object

Meta options for the form.

model

alias of PreservationRequirements

fields = '__all__'
required = ('preservation_requirements_value',)
not_required = ('preservation_requirements_type',)
widgets: ClassVar = {'preservation_requirements_note': <django.forms.widgets.Textarea object>, 'preservation_requirements_type': <django.forms.widgets.Select object>, 'preservation_requirements_value': <django.forms.widgets.Textarea object>}
base_fields = {'metadata': <django.forms.models.ModelChoiceField object>, 'preservation_requirements_note': <django.forms.fields.CharField object>, 'preservation_requirements_type': <django.forms.models.ModelChoiceField object>, 'preservation_requirements_value': <django.forms.fields.CharField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineAppraisalForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of Appraisal instances.

class Meta

Bases: object

Meta options for the form.

model

alias of Appraisal

fields = '__all__'
required = ('appraisal_value',)
not_required = ('appraisal_type',)
widgets: ClassVar = {'appraisal_note': <django.forms.widgets.Textarea object>, 'appraisal_type': <django.forms.widgets.Select object>, 'appraisal_value': <django.forms.widgets.Textarea object>}
base_fields = {'appraisal_note': <django.forms.fields.CharField object>, 'appraisal_type': <django.forms.models.ModelChoiceField object>, 'appraisal_value': <django.forms.fields.CharField object>, 'metadata': <django.forms.models.ModelChoiceField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineAssociatedDocumentationForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of AssociatedDocumentation instances.

class Meta

Bases: object

Meta options for the form.

model

alias of AssociatedDocumentation

fields = '__all__'
required = ('associated_documentation_title',)
not_required = ('associated_documentation_type',)
widgets: ClassVar = {'associated_documentation_note': <django.forms.widgets.Textarea object>, 'associated_documentation_type': <django.forms.widgets.Select object>, 'associated_documentation_value': <django.forms.widgets.Textarea object>}
base_fields = {'associated_documentation_note': <django.forms.fields.CharField object>, 'associated_documentation_title': <django.forms.fields.CharField object>, 'associated_documentation_type': <django.forms.models.ModelChoiceField object>, 'metadata': <django.forms.models.ModelChoiceField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.

class caais.forms.InlineGeneralNoteForm(*args, **kwargs)

Bases: CaaisModelForm

Form for inline editing of GeneralNote instances.

class Meta

Bases: object

Meta options for the form.

model

alias of GeneralNote

fields = '__all__'
widgets: ClassVar = {'general_note': <django.forms.widgets.Textarea object>}
base_fields = {'general_note': <django.forms.fields.CharField object>, 'metadata': <django.forms.models.ModelChoiceField object>}
declared_fields = {}
property media

Return all media required to render the widgets on this form.