如何在INSTALLED_APPS中的settings.py中导入所有模型?当我试图插入一些模型时发生错误:“没有名为app1_model的模型”
-ProjectName
--ProjectName
---models
----__init__.py
----admin.py
----app_1_model
----....
----app_n_model
---templates
---__init__.py
---settings.py
---urls.py
---wsgi.py
--manage.py
^项目结构^
答案 0 :(得分:6)
INSTALLED_APPS适用于不适用于型号的应用。模型是应用程序中的类,通常位于/«app_name»/models.py
中。
我认为您误解了Django项目的结构。尝试使用教程示例。
一个典型的结构:
/«project»/«app_name»/models.py
并在设置中:
INSTALLED_APPS = [ ... '«app_name»' ... ]
您的路径将包含基本项目目录,因此您可以在需要的地方导入应用程序。
并使用它们:
from «app_name».models import *
尽管最好不要import *
,而是命名要导入的类。
要回答评论中的问题:
如果您不喜欢将所有模型存储在一个文件中(即使执行此操作是正常的),您可以创建一个名为models的模块。为此,创建一个名为/«project»/«app_name»/models
的目录,在其中放置__init__.py
(将其声明为模块),然后在其中创建文件。然后,您需要将文件内容导入__init__.py
中的模块。您应该阅读Python模块以了解这一点。
回答第二个评论问题:
要在管理员中查看模型,您应该使用模型管理对象创建admin file。
最后:
请仔细阅读教程,以确保您对Django有透彻的了解。否则你就是在浪费自己的时间!