南自定义模型位置



我有一个相当大的django项目,它有很多应用程序和模型。为了避免循环导入,必须使用几个模型模块:

app/models.py
app/models_add.py
app/models_aux.py

等等。每次我必须进行迁移时,我都必须编写

from app.models_add import Model

在app/models.py中,以便South跟踪模型的更改。这似乎很烦人,因为模型有很多变化。

问题是:有没有办法向南方指出要跟踪哪些模块/文件?

您可以尝试在模型的Meta类上设置app_label。

class Meta:
    app_label = "app"

还可以尝试将您的目录结构设置为:

app/models/__init__.py
app/models/add.py

这应该会告诉一切正确初始化。这是我最近所做的,但为了在项目的其他领域实现向后兼容性,我在models/__init__.py 中导入了所有内容