【问题标题】:Import Django settings from external script从外部脚本导入 Django 设置
【发布时间】:2016-07-05 06:13:06
【问题描述】:

我的 Django 项目中有一个 python 脚本,旨在与 Django 应用程序分开运行。我想在我的 Django 应用程序上使用 settings.py 我该怎么做。

当我尝试导入时

from django.conf import settings

我明白了

ImportError: No module named DjangoTastypie.settings

我的项目结构

我正在使用 eclipse-> 作为 python 运行

【问题讨论】:

  • 你能添加你的项目结构吗?你是如何运行你的脚本的?
  • 尝试运行python myscript.py
  • 得到同样的错误
  • 看起来您的项目不在您的PYTHONPATH 中。而且我在您的项目中没有看到您的脚本。

标签: python django tastypie


【解决方案1】:

阅读https://docs.djangoproject.com/en/1.9/topics/settings/#calling-django-setup-is-required-for-standalone-django-usage

所以你基本上需要把它放在你脚本的开头

import os
import django
from django.conf import settings

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')
django.setup()

【讨论】:

  • 您好,我遇到了同样的错误。 import os import django from django.conf import settings os.environ['DJANGO_SETTINGS_MODULE'] = 'DjangoTastypie.settings' django.setup() 我得到ImportError: No module named DjangoTastypie.settings
【解决方案2】:

基于@Sardorbek Imomaliev,您还应该在 PYTHONPATH 中创建 DjangoTastypie,您可以在脚本中执行此操作。

import os
import sys
import django
from django.conf import settings

sys.path.append("path/to/DjangoTastypie")  # path to the parent dir of DjangoTastypie
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')
django.setup()

【讨论】:

    猜你喜欢
    • 2018-05-07
    • 2021-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-20
    相关资源
    最近更新 更多