Администраторы mutli django с различными базами данных в django 1.2 - странная проблема - PullRequest
0 голосов
/ 17 июня 2010

Я использую django 1.2 для создания многосайтового магазина.Мне нужно несколько учетных записей администратора для каждого экземпляра магазина, например

site.com / au / admin
site.com/uk/admin
и т. Д.

У меня естькласс промежуточного программного обеспечения и dbrouter, который обрабатывает соединения с базой данных на основе URL.Это прекрасно работает.

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

в admin.py:
если страна == 'au':
admin.site.register (Заказы)
admin.site.register (Оплата)

if country == 'uk':
admin.site.register (Store_locator)
и т. Д.

Проблема в следующем: если я захожу на AU-версию сайта, система администратора отображаетправильные элементы для АС.Если я затем войду в Великобританию, он по-прежнему показывает AU-версию системы администрирования, поэтому приведенный выше код, похоже, используется только при первой загрузке.если я убью сервер django и перезапущу его, а затем зайду на страницу администратора другого магазина, он будет перенастроен для этого магазина.

Как я могу получить информацию о смене страны при каждой загрузке системы администратора?Почему эта проблема возникает в первую очередь?

Любая помощь будет принята с благодарностью.

Спасибо, imanc

1 Ответ

0 голосов
/ 17 июня 2010

Держу пари, что Django не читает конфигурацию администратора при каждом запросе, но при каждом перезапуске сервера - вот почему он «прилипает» к тому, к чему вы обращались первым.

Почему бы не сделать что-то с разрешениями Django.contrib.auth, чтобы ограничить то, что конкретный пользователь с правами администратора может видеть в администраторе, и зарегистрировать все модели в admin.py как стандартные?

...