如何在Django项目中的额外模块中正确导入模型?

时间:2017-08-02 06:55:02

标签: python django

如果我想在我的Django项目中使用额外文件中的某些模型,我不能通过这种简单的方式来实现:

from myproject_app.models import *

因为我收到了这个错误:

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

为了解决这个问题,我找到了这个解决方案:

import os
import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings")
django.setup()
from myproject_app.models import *

确定。有用。但是,如果我想在models.py项目中使用来自这个额外文件的任何功能,那么根本不会启动!

请帮帮我。

2 个答案:

答案 0 :(得分:0)

我想您忘记在中注册您的应用,

INSTALLED_APPS = (
    myproject_app,
)

答案 1 :(得分:0)

将您创建的所有应用程序添加到INSTALLED_APPS,并且PEP8透视图永远不会按'*'导入所有模型,而是按照您正在使用的名称单独导入