在Django python中导入模型

时间:2013-03-15 15:31:22

标签: python django models

如何在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

^项目结构^

1 个答案:

答案 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有透彻的了解。否则你就是在浪费自己的时间!