Имена таблиц Django - PullRequest
       12

Имена таблиц Django

0 голосов
/ 16 февраля 2012

Я выполняю рефакторинг приложения Django. В частности, у меня есть приложение с большим файлом models.py, и я пытаюсь разбить его на несколько небольших файлов, например

myapp/
    models/
        __init__.py
        somemodels.py
        someothers.py
        somemore.py
        ...

и в models/__init__.py Я импортирую все модели из всех других файлов, чтобы мне не приходилось менять код клиента.

Проблема в том, что Django теперь жалуется на имена таблиц. Таблица для модели Foo раньше была myapp_foo, но похоже, что Django сейчас ищет таблицу myapp.models_foo. То есть кажется, что он использует в качестве префикса пакет, в котором модели определены вместо их приложения (конечно, myapp.models не зарегистрировано как приложение Django).

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

1 Ответ

2 голосов
/ 16 февраля 2012

Использование Meta.app_label

...