Я пытаюсь заставить два разных сайта Wagtail иметь свои собственные страницы 404, но, похоже, нет способа указать, какую страницу использовать в качестве страницы 404 в конфигурации "site" в настройках "wagtail" => раздел «сайты», и я не могу загрузить нужные 404, когда помещаю их в соответствующие каталоги приложений:
codebase/
./__init__.py
./manage.py
./apps/
./settings.py
./urls.py
...
./django-app-1/
./django-app-2/
./templates/
./404.html
./mainsite/
./migrations/
./static/
./templates/
./mainsite/
./404.html (this 404 always gets used)
./spinoff/
./migrations/
./static/
./templates/
./spinoff/
./404.html (this file never gets used)
Итак, в INSTALLED_APPS
имеем:
INSTALLED_APPS = [
...django apps...
...wagtail apps...
'apps.mainsite',
'apps.spinoff',
]
В этом случае основной сайт содержит большую часть всех типов страниц, а дополнительный сайт, который работает на другом домене, использует эти типы страниц , импортируя их из apps.mainsite
.
В Wagtail у нас есть две страницы, которые работают как root: Homepage
, который является mainsite
типом страницы, и Spinoff Homepage
, который является spinof
типом страницы, который наследуется от типа страницы основного сайта.
В настройках сайтов у нас есть одна запись сайта, которая указывает на mainsite.com
, с основным Homepage
, установленным как Root, и другая запись сайта, которая указывает на spinoff.com
, с домашней страницей spinoff, установленной как root.
Для обоих этих сайтов несуществующий URL-запрос приводит к тому, что 404.html основного сайта начинает использоваться, поэтому возникает вопрос: как сделать так, чтобы несуществующие URL-адреса в домене спин-оффа перешли в 404.html спин-оффа? вместо этого?