我正在使用Django框架开发Web应用程序。我有这个结构:
项目
我在models.py
文件中定义了我的模型。在我的设置文件中,我在project.web_app
中添加了这一行INSTALLED_APPS
。当我做的时候
python mange.py syncdb
未创建模型。要创建它们,我必须将project.web_app.models
添加到我的设置文件中。我已经看过别人的项目了,他们不喜欢这样,而且很有效。我正在做的是否正确?
答案 0 :(得分:4)
models.py 应位于您的应用文件夹下(在您的情况下" web_app ")。
如果你想分离你的模型,那么你必须将模型文件夹转换为python包,在这种情况下在该文件夹中添加__init__.py
并确保在init文件中你的模型可以被外部访问路径上的世界" web_app.models.ModelName "。
所以,解决方案1(标准Django方法):
解决方案2:
__init__.py
__init__.py
将包含以下内容:
from .ModelOne import ModelOne
from .ModelTwo import ModelTwo
方法N2也可以用于视图和其他东西;)
答案 1 :(得分:0)
首先将您的应用添加到INSTALLED_APPS
,然后运行
python manage.py inspectdb > somefile.txt
如果您的数据库结构与您的django模型匹配,您可以快速查看。
如果python manage.py inspectdb > somefile.txt
未创建任何结构,请确保将您的应用添加到INSTALLED_APPS
。