Wagtail Forms ************* - :doc:`dev-wagtail` - :doc:`dev-wagtail-contact-page` - :doc:`dev-wagtail-issues` - :doc:`dev-wagtail-plugins` Random Links ============ - `Using Wagtail CMS ModelViewSet and ModelViewSetGroup`_ - `Custom page listings`_ - `Customizing generated forms`_ Forms ===== For the form, replace ``forms.ModelForm`` with ``WagtailAdminModelForm``:: # -*- encoding: utf-8 -*- from wagtail.admin.forms import WagtailAdminModelForm from .models import RegistrationApplication class RegistrationApplicationForm(WagtailAdminModelForm): class Meta: fields = ["firstName", "title", "website"] model = RegistrationApplication def clean(self): cleaned_data = super().clean() print("\nclean") return cleaned_data For ``ModelViewSet`` options see ModelViewSet_...:: # -*- encoding: utf-8 -*- from wagtail.admin.viewsets.base import ViewSetGroup from wagtail.admin.viewsets.model import ModelViewSet from .forms import RegistrationApplicationForm from .models import RegistrationApplication class RegistrationApplicationViewSet(ModelViewSet): model = RegistrationApplication list_display = ["dateOfApplication", "organisation"] ordering = ["-dateOfApplication"] icon = "user" add_to_admin_menu = False copy_view_enabled = False inspect_view_enabled = False def get_form_class(self, **kwargs): return RegistrationApplicationForm # not sure this needed... # registration_application_viewset = RegistrationApplicationViewSet( # "registration_application" # ) To add to the Wagtail menu:: class MemberViewSetGroup(ViewSetGroup): menu_label = "Members" menu_icon = "table" items = (RegistrationApplicationViewSet,) .. _`Custom page listings`: https://docs.wagtail.org/en/7.1/advanced_topics/customization/custom_page_listings.html .. _`Customizing generated forms`: https://docs.wagtail.org/en/7.1/advanced_topics/customization/page_editing_interface.html#customizing-generated-forms .. _`Using Wagtail CMS ModelViewSet and ModelViewSetGroup`: https://www.youtube.com/watch?v=C50EDbjB4xE .. _ModelViewSet: https://docs.wagtail.org/en/latest/reference/viewsets.html#modelviewset