Album¶
Models¶
An album component you may use in a gallery.
Album items are ordered from their order field value. Items with a zero
value for their order will be ordered in an almost arbitrary order (mostly
depending from item object id).
Album form have a special field mass_upload, it expects a valid ZIP archive
file to create items. Archive file is limited to the value from setting
BLOCKS_MASSUPLOAD_FILESIZE_LIMIT.
The archive file may contains one or many image files with enabled format from
django-smart-media setting SMARTIMAGE_ALLOWED_IMAGE_EXTENSIONS. Each image will
create a new Album item where the name will be filled with the full relative image file
path. Images in archive can be structured in multiple subdirectory. Created Album item
from an archive don’t have any order.
- class cmsplugin_blocks.models.album.Album(*args, **kwargs)[source]¶
Album container for items.
- title¶
A required title string.
- template¶
Template choice from available plugin templates in setting
BLOCKS_ALBUM_TEMPLATES. Default to the first choice item.
- size_features¶
Optional related size features.
- color_features¶
Optional related color features.
- extra_features¶
Optional related extra features.
- copy_relations(oldinstance)[source]¶
Copy all relations when plugin object is copied as another object.
See:
https://docs.django-cms.org/en/latest/how_to/09-custom_plugins.html#relations-between-plugins
Factories¶
Forms¶
- class cmsplugin_blocks.forms.album.AlbumForm(*args, **kwargs)[source]¶
Form to manage an Album with possible ZIP file to store items.
Be aware that this form does not finally save collected image items, they are stored to attribute
_awaiting_itemson Album instance. Then in the common workflow, the CMS plugin using this form will get this attribute and perform final save. If you use this form without the CMS plugin edit workflow, you will need to reproduce it.- clean_mass_upload()[source]¶
Validate uploaded ZIP archive file and temporary store it to “uploaded_zip” form object attribute if valid.
- save(*args, **kwargs)[source]¶
Save this form’s self.instance object if commit=True. Otherwise, add a save_m2m() method to the form which can be called after the instance is saved manually at a later time. Return the model instance.
- property media¶
Return all media required to render the widgets on this form.
- class cmsplugin_blocks.forms.album.AlbumItemForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None, renderer=None)[source]¶
- property media¶
Return all media required to render the widgets on this form.
Plugins¶
- class cmsplugin_blocks.plugins.album.AlbumPlugin(model=None, admin_site=None)[source]¶
Album interface is able to add/edit/remove items within inline forms.
Also used template is dynamically retrieved from “template” value.