Django префикс на всех сгенерированных URL-адресах

Мой прокси (публичный порт nginx 80) для django (gunicorn wsgi localhost порт 8000) удаляет путь к приложению "/app", поэтому запросы для http://server /app/helloвыглядит для django как /helloи запросы на http://server/app/adminотображаются для django как /admin.

Проблема в том, что сайт администратора генерирует выходные данные с абсолютными URL-адресами, такими как

на экране входа в систему. Таким образом, пользователь видит экран входа в систему администратора, но он отправляет сообщения на http://server/admin, которого не существует. (Я надеялся, что он будет использовать относительные URL-адреса и работать в любом месте.)

Каков самый простой способ заставить страницы администрирования всегда добавлять «/app» в начале, например form action="/app/admin/ "ко всем URL-адресам, которые он генерирует при выводе страницы? Я надеюсь на что-то встроенное в Django, например, простое определение, и мне не нужно создавать специальные фильтры, а затем переписывать шаблоны для их использования, но я не могу найти это.

9
задан maxpolk 30 May 2012 в 15:18
поделиться