Wagtail и allauth - allauth наследует имя сайта от django, а не от wagtail
Я использую allauth с wagtail. Я назвал свой сайт 'mysite' в админке wagtail, но при регистрации письма ссылаются на 'example.com'
В моем settings.py приложения расположены в следующем порядке
[ ...
'django.contrib.auth',
'django.contrib.sites',
"allauth",
"allauth.account",
"allauth.socialaccount",
"allauth.account",
"allauth.socialaccount",
'wagtail.contrib.forms',
'wagtail.contrib.redirects',
'wagtail.embeds',
'wagtail.sites',
'wagtail.users',
'wagtail.snippets',
'wagtail.documents',
'wagtail.images',
'wagtail.search',
'wagtail.admin',
'wagtail.core',
]
Похоже, что это может быть связано с конфликтом между django и wagtail, описанным здесь https://github.com/wagtail/wagtail/issues/2840. Однако, похоже, что этот вопрос был закрыт, и я использую последнюю версию (Django==3.2.11, django-allauth==0.47.0, wagtail==2.15.1)
Это ожидаемое поведение - django-allauth является пакетом Django, а не специфическим для Wagtail, и всегда использует модель сайта Django, даже когда Wagtail активен. Чтобы обновить имя сайта, войдите в бэкенд администратора Django (в отличие от бэкенда Wagtail - его можно найти по адресу http://localhost:8000/django-admin/, если вы настроили свой проект с помощью команды wagtail start) и перейдите к пункту Sites.
Проблема, исправленная в https://github.com/wagtail/wagtail/issues/2840, заключалась в том, что Wagtail и django-allauth не могли сосуществовать вообще, из-за того, что оба пытались установить конфликтующие request.site переменные.