Initial commit
This commit is contained in:
28
env/lib/python3.10/site-packages/wagtail/snippets/apps.py
vendored
Normal file
28
env/lib/python3.10/site-packages/wagtail/snippets/apps.py
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
from django.apps import AppConfig
|
||||
from django.db.models.signals import post_migrate
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
|
||||
class WagtailSnippetsAppConfig(AppConfig):
|
||||
name = "wagtail.snippets"
|
||||
label = "wagtailsnippets"
|
||||
verbose_name = _("Wagtail snippets")
|
||||
|
||||
def ready(self):
|
||||
from .models import create_extra_permissions, register_deferred_snippets
|
||||
|
||||
# Register all snippets for which register_snippet was called up to this point -
|
||||
# these registrations had to be deferred as we could not guarantee that models were
|
||||
# fully loaded at that point (but now they are).
|
||||
register_deferred_snippets()
|
||||
|
||||
# Models with certain mixins, e.g. DraftStateMixin, may require extra permissions
|
||||
# in the admin. We need to make sure these are available without having to be
|
||||
# created manually.
|
||||
# Django also uses post_migrate signal to create permissions for models based on
|
||||
# the model's Meta options:
|
||||
# https://github.com/django/django/blob/64b3c413da011f55469165256261f406a277e822/django/contrib/auth/apps.py#L19-L22
|
||||
# However, we cannot put the extra permissions in the model mixin's Meta class,
|
||||
# as we do not know the concrete model's name. Thus, we use our own signal handler
|
||||
# to create the extra permissions.
|
||||
post_migrate.connect(create_extra_permissions, sender=self)
|
||||
Reference in New Issue
Block a user