Есть ли в админке Wagtail метод save_model администратора Django? - PullRequest
1 голос
/ 29 апреля 2019

У меня есть модель, экземпляры которой я хотел бы ограничить определенной трясогузкой Site, и поэтому я хочу автоматически сохранить сайт с моделью. Я определил TenantAwareModel, от которого я наследую при определении моделей для конкретного сайта:

class TenantAwareModel(models.Model):
    class Meta:
        abstract = True

    tenant = models.ForeignKey(Site, on_delete=models.CASCADE)

Wagtail предоставляет site как часть request, поэтому в файле wagtail_hooks.py я хотел переопределить save_model так же, как это можно сделать в обычном администраторе Django. Тем не менее, я только что обнаружил, что в Wagtail ModelAdmin нет метода save_model. Есть ли способ перехватить сохранение в администраторе Wagtail, чтобы вставить значение, которое берется из объекта запроса (в данном случае сайта) в модель? Я не думаю, что могу использовать сигнал pre_save, потому что request недоступен в pre_save().

...