Столкновение имен приложений в пакетах django

В моем проекте django есть локальное приложение под названием "account", которое управляет учетными записями пользователей. Он имеет живые и заполненные таблицы БД, которые начинаются с account_. Он также имеет urls.py запись:

(r'^accounts/', include('accounts.urls')),

Теперь я хочу использовать django-allauth для поддержки OpenId. Тем не менее, я заметил, что есть столкновение имен приложений, так как Аллах также использует accounts создать таблицы БД, начинающиеся с account_, и попросить urls.py содержать:

(r'^accounts/', include('allauth.urls')),

Каков наилучший способ решить этот конфликт имен приложений?

1 ответ

Решение

Добавлять db_table в мета:

class Accounts(models.Model):
    # ...
    class Meta:
        db_table = 'my_accounts'

Относительно URL. Вы не можете использовать оба? То есть:

(r'^accounts/', include('accounts.urls')),
(r'^accounts/', include('allauth.urls')),
Другие вопросы по тегам