我一直在寻找解决方法。这些是我在发布此问题之前尝试过的事情。不幸的是,他们都没有工作。
在设置的INSTALLED_APPS列表中添加了应用名称(myapp),此操作无效。
尝试仅添加应用名称,但效果不佳。因此,为了安全起见,我现在使用完整的点划线路径(myapp.settings.MyappConfig)。
已删除__pycache__/*.pyc
当我运行$ python manage.py showmigrations
时,我可以看到已识别出“ myapp”,但是没有迁移。
我已将所有模型放在一个文件夹中进行整理。请参阅下面的我的文件夹结构。我在这里想念什么?这真令人沮丧,请帮助我。预先感谢!
mysite
|__myapp
| |__ models
| | |__ __init__.py
| | |__ project.py
| |
| |___ apps.py
| |___ admin.py #<-- register your models here
|
|__mysite
|__ settings.py
我能够通过在admin.py中注册模型来生成迁移脚本
https://docs.djangoproject.com/en/2.1/ref/contrib/admin/
现在,您可以将模型组织到文件夹中。无需在__init__.py
中定义模块。
希望有人发现这很有用。感谢您的所有答复。
答案 0 :(得分:0)
确保应用程序内部有一个migrations
文件夹,并且其中有一个__init__.py
。对Models文件夹也是如此,您应确保那里有__init__.py
文件。否则,python将无法将其识别为模块。
同样在init文件(用于模型)中,您需要导入Model类,如下所示:
from .project import ProjectModel
或者您可以运行python manage.py makemigrations <app_name>
创建迁移文件夹。