Django Неверный заголовок HTTP_HOST: «testserver». Возможно, вам придется добавить u'testserver' в ALLOWED_HOSTS.Python

Программы на Python
Anonymous
Django Неверный заголовок HTTP_HOST: «testserver». Возможно, вам придется добавить u'testserver' в ALLOWED_HOSTS.

Сообщение Anonymous »

Я начал изучать Django и сейчас реализую функцию «Проверка представления».
Когда я использую тестовый клиент в оболочке, возникает следующее исключение.


Неверный заголовок HTTP_HOST: «testserver». Возможно, вам придется добавить u'testserver' в ALLOWED_HOSTS.


Я запускаю команду в оболочке следующим образом.
>>> from django.test.utils import setup_test_environment
>>> setup_test_environment()
>>> from django.test import Client
>>> client = Client()
>>> response = client.get('/')
>>> response.status_code
400


В учебнике должно появиться 404, но я получаю 400.
Когда я продолжаю выполнять команду следующим образом, происходит то же исключение.

>>> response = client.get(reverse('polls:index'))
>>> response.status_code
400


но результат должен быть 200. Думаю, мне следует объявить ALLOWED_HOSTS в settings.py, но как могу ли я?
Я запускаю сервер на локальном хосте, используя $python Manage.py runserver.

Я хочу знать причину и решение .

Здесь файл settings.py выглядит следующим образом.

import os
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
SECRET_KEY = '8v57o6wyupthi^#41_yfg4vsx6s($1$x0xmu*95_u93wwy0_&u'
DEBUG = True
ALLOWED_HOSTS = [127.0.0.1,'localhost']
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'polls',
]
.... (MIDDLEWARE)
ROOT_URLCONF = 'tutorial.urls'

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]

WSGI_APPLICATION = 'tutorial.wsgi.application'
.... (DATABASES, AUTH_PASSWORD_VALIDATORS)
LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True


Подробнее здесь: https://stackoverflow.com/questions/441 ... testserver

Вернуться в «Python»