Django在迁移期间无法导入本地模块

时间:2019-04-16 02:11:13

标签: python django migration

在我的项目中,我有两个自定义对象,分别在本地fields.py文件和blocks.py文件中定义。我将它们导入到我的models.py中,如下所示:

from . import fields as blockfields
from . import blocks 

,并且在运行迁移时,自动生成的迁移如下所示:

import PROJECTNAME.fields
import blocks

,由于blocks在迁移文件夹的本地范围内不存在,因此将引发错误。如果我手动将其更改为“将PROJECTNAME.blocks作为块导入”,则它运行良好,但是每次都必须这样做很愚蠢。有什么想法吗?


更新: 使用Django 2.1.4,Python 3.6.7

文件夹结构为:

PROJECTNAME
-fields.py
-models.py
-blocks/
--__init__.py
--*.py
-migrations/
--*.py

我曾经尝试过使用一个blocks.py文件来指向该文件夹,但是它并没有改变自动迁移的导入范围。

在我的块域中,我也指代块,这就是将引用烘焙到迁移中的方式。 fields.py文件具有django通用模型.Field的扩展名,而块是从头开始的自定义类型。

0 个答案:

没有答案