mirror of
https://github.com/wagtail/wagtail.git
synced 2024-11-29 17:36:49 +01:00
b4bc681865
Fixes #8989. The previous fix #9004 failed for custom document models because ChooserViewset assigns an internal name for the ChooserBlock class based on the model name, and if this is anything other than Document it won't match the name DocumentChooserBlock that it's exposed under in wagtail.documents.blocks. Fix this by replacing the `block_class` property with a `get_block_class` method that lets us specify the class name. As a bonus, user code that defines chooser blocks no longer has to directly hack the `__module__` attribute.
2.2 KiB
2.2 KiB
Viewsets
Viewsets are Wagtail's mechanism for defining a group of related admin views with shared properties, as a single unit. See Generic views.
ViewSet
.. autoclass:: wagtail.admin.viewsets.base.ViewSet
.. automethod:: on_register
.. automethod:: get_urlpatterns
.. automethod:: get_url_name
ModelViewSet
.. autoclass:: wagtail.admin.viewsets.model.ModelViewSet
.. attribute:: model
Required; the model class that this viewset will work with.
.. attribute:: form_fields
A list of model field names that should be included in the create / edit forms.
.. attribute:: exclude_form_fields
Used in place of ``form_fields`` to indicate that all of the model's fields except the ones listed here should appear in the create / edit forms. Either ``form_fields`` or ``exclude_form_fields`` must be supplied (unless ``get_form_class`` is being overridden).
.. automethod:: get_form_class
.. autoattribute:: icon
.. autoattribute:: index_view_class
.. autoattribute:: add_view_class
.. autoattribute:: edit_view_class
.. autoattribute:: delete_view_class
ChooserViewSet
.. autoclass:: wagtail.admin.viewsets.chooser.ChooserViewSet
.. attribute:: model
Required; the model class that this viewset will work with.
.. autoattribute:: icon
.. autoattribute:: choose_one_text
.. autoattribute:: page_title
.. autoattribute:: choose_another_text
.. autoattribute:: edit_item_text
.. autoattribute:: per_page
.. autoattribute:: choose_view_class
.. autoattribute:: choose_results_view_class
.. autoattribute:: chosen_view_class
.. autoattribute:: create_view_class
.. autoattribute:: base_widget_class
.. autoattribute:: widget_class
.. autoattribute:: register_widget
.. autoattribute:: base_block_class
.. automethod:: get_block_class
.. autoattribute:: creation_form_class
.. autoattribute:: form_fields
.. autoattribute:: exclude_form_fields
.. autoattribute:: create_action_label
.. autoattribute:: create_action_clicked_label
.. autoattribute:: creation_tab_label
.. autoattribute:: search_tab_label