У меня есть модель, экземпляры которой я хотел бы ограничить определенной трясогузкой 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()
.