В моем проекте у меня есть два пользовательских объекта, определенных в локальном файле fields.py и blocks.py.Я импортирую их в мой models.py следующим образом:
from . import fields as blockfields
from . import blocks
и при выполнении миграций автоматически созданные миграции выглядят так:
import PROJECTNAME.fields
import blocks
, и поскольку блоки не входят в локальную область действияПапка миграций выдает ошибку.Если я вручную изменю его на «импортировать PROJECTNAME.blocks как блоки», он будет работать нормально, но было бы глупо делать это каждый раз.Есть мысли?
Обновления: с использованием Django 2.1.4, Python 3.6.7
Структура папки выглядит следующим образом:
PROJECTNAME
-fields.py
-models.py
-blocks/
--__init__.py
--*.py
-migrations/
--*.py
Я по-разному пытался иметь блокиФайл .py, который просто указывает на папку, но не меняет область импорта для автоперемещения.
В моих блок-полях я также ссылаюсь на блоки, то есть ссылки запекаются в миграциях.Файл fields.py имеет расширение общих моделей django.Field, в то время как блоки являются пользовательскими типами с нуля.