импортируйте django модуль

Я пытаюсь импортировать from django.http import HttpResponse, но я получаю следующее исключение:

ImportError: Settings cannot be imported, because environment variable
DJANGO_SETTINGS_MODULE is undefined.

Кто-либо мог помочь мне?

Заранее спасибо

0
задан Tamás 8 August 2010 в 10:10
поделиться

2 ответа

Django использует переменную среды с именем DJANGO_SETTINGS_MODULE , чтобы выяснить, где находится файл глобальной конфигурации. DJANGO_SETTINGS_MODULE должен относиться к модулю Python, который содержит ваши параметры конфигурации, и этот модуль должен находиться на пути Python. Если вы по какой-либо причине не хотите использовать модуль глобальной конфигурации, вам необходимо вызвать settings.configure из django.conf перед использованием любого кода Django, который использует настройки:

from django.conf import settings

settings.configure(DEBUG=True, TEMPLATE_DEBUG=True,
                   TEMPLATE_DIRS=('/home/web-apps/myapp',
                       '/home/web-apps/base'))

Дополнительную информацию можно найти в документации Django .

2
ответ дан 4 September 2019 в 00:46
поделиться

Если вы хотите использовать Django из (скажем) скрипт Python, вы должны установить модуль настроек , как вы сказали.

Другой способ сделать следующее:

#!/usr/bin/python
from django.core.management import setup_environ
import os
import settings

os.environ['DJANGO_SETTINGS_MODULE'] = "mysite.settings" # or just "settings" if it's on the same directory as settings.py

from mysite.myapp.models import * # import models, etc, only *after* setting up the settings module

setup_environ(settings)

# insert your code here, say saving an entry

c = MyClass()
c.text = "Hello!"
c.save()
4
ответ дан 4 September 2019 в 00:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: