Это предупреждение в django_tenants все еще действует? - PullRequest
0 голосов
/ 15 марта 2019

В apps.py из django_tenants я вижу это:

recommended_config = """
Warning: You should put 'django_tenants' at the end of INSTALLED_APPS:
INSTALLED_APPS = TENANT_APPS + SHARED_APPS + ('django_tenants',)
This is necessary to overwrite built-in django management commands with
their schema-aware implementations.
"""

Мой вопрос: это все еще актуально? У нас были установлены django_tenants (в dev) за несколько недель, прежде чем я увидел это сообщение в коде. Это не было последним в INSTALLED_APPS, но, казалось, работало просто отлично.

1 Ответ

0 голосов
/ 16 марта 2019

Если вы хотите, чтобы приложение переопределяло команды управления других приложений, оно должно быть указано первым :

Django регистрирует встроенные команды и затем ищет команды в INSTALLED_APPS в обратном порядке. Во время поиска, если имя команды дублирует уже зарегистрированную команду, вновь обнаруженная команда переопределяет первую.

Другими словами, чтобы переопределить команду, новая команда должна иметь то же имя, и ее приложение должно быть до приложение переопределенной команды в INSTALLED_APPS.

Так что этот совет устарел (это было изменилось пять лет назад).

Обратите внимание, что фактическая документация по установке для django_tenants является актуальной, список 'django_tenants' первый:

SHARED_APPS = (
    'django_tenants',  # mandatory
    ...
)
INSTALLED_APPS = list(SHARED_APPS) + ...

Так что найденная вами строка кода может быть неактуальной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...