admin Package

admin Package

Admin of Zinnia

category Module

CategoryAdmin for Zinnia

class zinnia.admin.category.CategoryAdmin(model, admin_site)

Bases: django.contrib.admin.options.ModelAdmin

Admin for Category model.

fields = ('title', 'parent', 'description', 'slug')
form

alias of zinnia.admin.forms.CategoryAdminForm

get_tree_path(category)

Return the category’s tree path in HTML.

list_display = ('title', 'slug', 'get_tree_path', 'description')
list_filter = ('parent',)
media
prepopulated_fields = {'slug': ('title',)}
search_fields = ('title', 'description')
sortable_by = ('title', 'slug')

entry Module

EntryAdmin for Zinnia

class zinnia.admin.entry.EntryAdmin(model, admin_site)

Bases: django.contrib.admin.options.ModelAdmin

Admin for Entry model.

actions = ['make_mine', 'make_published', 'make_hidden', 'close_comments', 'close_pingbacks', 'close_trackbacks', 'ping_directories', 'put_on_top', 'mark_featured', 'unmark_featured']
actions_on_bottom = True
actions_on_top = True
close_comments(request, queryset)

Close the comments for selected entries.

close_pingbacks(request, queryset)

Close the pingbacks for selected entries.

close_trackbacks(request, queryset)

Close the trackbacks for selected entries.

date_hierarchy = 'publication_date'
fieldsets = (('Content', {'fields': (('title', 'status'), 'lead', 'content')}), ('Illustration', {'fields': ('image', 'image_caption'), 'classes': ('collapse', 'collapse-closed')}), ('Publication', {'fields': ('publication_date', 'sites', ('start_publication', 'end_publication')), 'classes': ('collapse', 'collapse-closed')}), ('Discussions', {'fields': ('comment_enabled', 'pingback_enabled', 'trackback_enabled'), 'classes': ('collapse', 'collapse-closed')}), ('Privacy', {'fields': ('login_required', 'password'), 'classes': ('collapse', 'collapse-closed')}), ('Templates', {'fields': ('content_template', 'detail_template'), 'classes': ('collapse', 'collapse-closed')}), ('Metadatas', {'fields': ('featured', 'excerpt', 'authors', 'related'), 'classes': ('collapse', 'collapse-closed')}), (None, {'fields': ('categories', 'tags', 'slug')}))
filter_horizontal = ('categories', 'authors', 'related')
form

alias of zinnia.admin.forms.EntryAdminForm

formfield_for_manytomany(db_field, request, **kwargs)

Filter the disposable authors.

get_actions(request)

Define actions by user’s permissions.

get_authors(entry)

Return the authors in HTML.

get_categories(entry)

Return the categories linked in HTML.

get_changeform_initial_data(request)

Provide initial datas when creating an entry.

get_is_visible(entry)

Admin wrapper for entry.is_visible.

get_queryset(request)

Make special filtering by user’s permissions.

get_readonly_fields(request, obj=None)

Return readonly fields by user’s permissions.

get_short_url(entry)

Return the short url in HTML.

get_sites(entry)

Return the sites linked in HTML.

get_tags(entry)

Return the tags linked in HTML.

get_title(entry)

Return the title with word count and number of comments.

list_display = ('get_title', 'get_authors', 'get_categories', 'get_tags', 'get_sites', 'get_is_visible', 'featured', 'get_short_url', 'publication_date')
list_filter = (<class 'zinnia.admin.filters.CategoryListFilter'>, <class 'zinnia.admin.filters.AuthorListFilter'>, 'publication_date', 'sites', 'status')
make_hidden(request, queryset)

Set entries selected as hidden.

make_mine(request, queryset)

Set the entries to the current user.

make_published(request, queryset)

Set entries selected as published.

Mark selected as featured post.

media
ping_directories(request, queryset, messages=True)

Ping web directories for selected entries.

prepopulated_fields = {'slug': ('title',)}
put_on_top(request, queryset)

Put the selected entries on top at the current date.

radio_fields = {'content_template': 2, 'detail_template': 2}
search_fields = ('title', 'excerpt', 'content', 'tags')
sortable_by = ('publication_date', 'featured')

Un-Mark selected featured posts.

fields Module

Fields for Zinnia admin

class zinnia.admin.fields.MPTTModelChoiceIterator(field)

Bases: django.forms.models.ModelChoiceIterator

MPTT version of ModelChoiceIterator.

choice(obj)

Overloads the choice method to add the position of the object in the tree for future sorting.

class zinnia.admin.fields.MPTTModelMultipleChoiceField(level_indicator='|--', *args, **kwargs)

Bases: django.forms.models.ModelMultipleChoiceField

MPTT version of ModelMultipleChoiceField.

choices

Override the _get_choices method to use MPTTModelChoiceIterator.

label_from_instance(obj)

Create labels which represent the tree level of each node when generating option labels.

filters Module

Filters for Zinnia admin

class zinnia.admin.filters.AuthorListFilter(request, params, model, model_admin)

Bases: zinnia.admin.filters.RelatedPublishedFilter

List filter for EntryAdmin with published authors only.

lookup_key = 'authors__id'
model

alias of zinnia.models.author.Author

parameter_name = 'author'
title = 'published authors'
class zinnia.admin.filters.CategoryListFilter(request, params, model, model_admin)

Bases: zinnia.admin.filters.RelatedPublishedFilter

List filter for EntryAdmin about categories with published entries.

lookup_key = 'categories__id'
model

alias of zinnia.models.category.Category

parameter_name = 'category'
title = 'published categories'
class zinnia.admin.filters.RelatedPublishedFilter(request, params, model, model_admin)

Bases: django.contrib.admin.filters.SimpleListFilter

Base filter for related objects to published entries.

lookup_key = None
lookups(request, model_admin)

Return published objects with the number of entries.

model = None
queryset(request, queryset)

Return the object’s entries if a value is set.

forms Module

Forms for Zinnia admin

class zinnia.admin.forms.CategoryAdminForm(*args, **kwargs)

Bases: django.forms.models.ModelForm

Form for Category’s Admin.

class Meta

Bases: object

CategoryAdminForm’s Meta.

fields = '__all__'
model

alias of zinnia.models.category.Category

admin_site = <django.contrib.admin.sites.AdminSite object>
base_fields = {'description': <django.forms.fields.CharField object>, 'parent': <mptt.forms.TreeNodeChoiceField object>, 'slug': <django.forms.fields.SlugField object>, 'title': <django.forms.fields.CharField object>}
clean_parent()

Check if category parent is not selfish.

declared_fields = {'parent': <mptt.forms.TreeNodeChoiceField object>}
media
class zinnia.admin.forms.EntryAdminForm(*args, **kwargs)

Bases: django.forms.models.ModelForm

Form for Entry’s Admin.

class Meta

Bases: object

EntryAdminForm’s Meta.

fields = '__all__'
model

alias of zinnia.models.entry.Entry

widgets = {'excerpt': <class 'zinnia.admin.widgets.MiniTextarea'>, 'image_caption': <class 'zinnia.admin.widgets.MiniTextarea'>, 'lead': <class 'zinnia.admin.widgets.MiniTextarea'>, 'tags': <class 'zinnia.admin.widgets.TagAutoComplete'>}
admin_site = <django.contrib.admin.sites.AdminSite object>
base_fields = {'authors': <django.forms.models.ModelMultipleChoiceField object>, 'categories': <zinnia.admin.fields.MPTTModelMultipleChoiceField object>, 'comment_count': <django.forms.fields.IntegerField object>, 'comment_enabled': <django.forms.fields.BooleanField object>, 'content': <django.forms.fields.CharField object>, 'content_template': <django.forms.fields.TypedChoiceField object>, 'creation_date': <django.forms.fields.DateTimeField object>, 'detail_template': <django.forms.fields.TypedChoiceField object>, 'end_publication': <django.forms.fields.DateTimeField object>, 'excerpt': <django.forms.fields.CharField object>, 'featured': <django.forms.fields.BooleanField object>, 'image': <django.forms.fields.ImageField object>, 'image_caption': <django.forms.fields.CharField object>, 'last_update': <django.forms.fields.DateTimeField object>, 'lead': <django.forms.fields.CharField object>, 'login_required': <django.forms.fields.BooleanField object>, 'password': <django.forms.fields.CharField object>, 'pingback_count': <django.forms.fields.IntegerField object>, 'pingback_enabled': <django.forms.fields.BooleanField object>, 'publication_date': <django.forms.fields.DateTimeField object>, 'related': <django.forms.models.ModelMultipleChoiceField object>, 'sites': <django.forms.models.ModelMultipleChoiceField object>, 'slug': <django.forms.fields.SlugField object>, 'start_publication': <django.forms.fields.DateTimeField object>, 'status': <django.forms.fields.TypedChoiceField object>, 'tags': <tagging.forms.TagField object>, 'title': <django.forms.fields.CharField object>, 'trackback_count': <django.forms.fields.IntegerField object>, 'trackback_enabled': <django.forms.fields.BooleanField object>}
declared_fields = {'categories': <zinnia.admin.fields.MPTTModelMultipleChoiceField object>}
media

widgets Module

Widgets for Zinnia admin

class zinnia.admin.widgets.MPTTFilteredSelectMultiple(verbose_name, is_stacked=False, attrs=None, choices=())

Bases: django.contrib.admin.widgets.FilteredSelectMultiple

MPTT version of FilteredSelectMultiple.

media

MPTTFilteredSelectMultiple’s Media.

optgroups(name, value, attrs=None)

Return a list of optgroups for this widget.

option_inherits_attrs = True
class zinnia.admin.widgets.MiniTextarea(attrs=None)

Bases: django.contrib.admin.widgets.AdminTextareaWidget

Vertically shorter version of the admin textarea widget.

media
rows = 2
class zinnia.admin.widgets.TagAutoComplete(attrs=None)

Bases: django.contrib.admin.widgets.AdminTextInputWidget

Tag widget with autocompletion based on select2.

get_tags()

Returns the list of tags to auto-complete.

media

TagAutoComplete’s Media.

render(name, value, attrs=None, renderer=None)

Render the default widget and initialize select2.