'NoneType' object is not subscriptable
Request Method: | GET |
---|---|
Request URL: | http://practicaldiagnostics.ru/book/35/ |
Django Version: | 2.2.7 |
Exception Type: | TypeError |
Exception Value: | 'NoneType' object is not subscriptable |
Exception Location: | /var/www/htdocs/gr/htdocs/book/views.py in book, line 269 |
Python Executable: | /usr/bin/python3 |
Python Version: | 3.6.9 |
Python Path: | ['/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/usr/lib/python3.6/site-packages', '/var/www/htdocs/gr/htdocs', '/var/www/htdocs/gr/htdocs/real'] |
Server time: | Чт, 28 Мар 2024 15:00:12 +0300 |
/usr/lib/python3.6/site-packages/django/core/handlers/exception.py
in inner
This decorator is automatically applied to all middleware to ensure that
no middleware leaks an exception and that the next middleware in the stack
can rely on getting a response instead of an exception.
"""
@wraps(get_response)
def inner(request):
try:
response = get_response(request)…
except Exception as exc:
response = response_for_exception(request, exc)
return response
return inner
Variable | Value |
---|---|
exc | TypeError("'NoneType' object is not subscriptable",) |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f0ca466c6a0>> |
request | <WSGIRequest: GET '/book/35/'> |
/usr/lib/python3.6/site-packages/django/core/handlers/base.py
in _get_response
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)
except Exception as e:
response = self.process_exception_by_middleware(e, request)…
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
view_name = callback.__name__
else: # CBV
Variable | Value |
---|---|
callback | <function render_to.<locals>.renderer.<locals>.wrapper at 0x7f0c61bf1378> |
callback_args | () |
callback_kwargs | {'page': '35'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f0c88046588>> |
request | <WSGIRequest: GET '/book/35/'> |
resolver | <URLResolver 'real.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=common.decorators.wrapper, args=(), kwargs={'page': '35'}, url_name=book, app_names=[], namespaces=[], route=book/(?:(?P<page>\d+)/)?$) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f0ca466c6a0> |
wrapped_callback | <function render_to.<locals>.renderer.<locals>.wrapper at 0x7f0c61bf1378> |
/usr/lib/python3.6/site-packages/django/core/handlers/base.py
in _get_response
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)…
except Exception as e:
response = self.process_exception_by_middleware(e, request)
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
Variable | Value |
---|---|
callback | <function render_to.<locals>.renderer.<locals>.wrapper at 0x7f0c61bf1378> |
callback_args | () |
callback_kwargs | {'page': '35'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f0c88046588>> |
request | <WSGIRequest: GET '/book/35/'> |
resolver | <URLResolver 'real.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=common.decorators.wrapper, args=(), kwargs={'page': '35'}, url_name=book, app_names=[], namespaces=[], route=book/(?:(?P<page>\d+)/)?$) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f0ca466c6a0> |
wrapped_callback | <function render_to.<locals>.renderer.<locals>.wrapper at 0x7f0c61bf1378> |
/var/www/htdocs/gr/htdocs/common/decorators.py
in wrapper
return {'data': 'some_data'}
else:
return {'data': 'some_other_data'}, 'another/template.html'
"""
def renderer(func):
def wrapper(request, *args, **kw):
output = func(request, *args, **kw)…
if isinstance(output, (list, tuple)):
return render(request, output[1], output[0])
elif isinstance(output, dict):
return render(request, template, output)
return output
return wrapper
Variable | Value |
---|---|
args | () |
func | <function book at 0x7f0c61bf12f0> |
kw | {'page': '35'} |
request | <WSGIRequest: GET '/book/35/'> |
template | 'book.html' |
/var/www/htdocs/gr/htdocs/book/views.py
in book
request.session['book_test'] = book_test
return redirect('book', page = rd['next_page'])
if p0 == 35: #test_results
rd['test_result'] = request.session.get('book_test', None)
sm = 0
for i, key in enumerate(TB_KEY):
sm+=(key-rd['test_result'][i])**2…
rd['test_sum'] = sm
for i in TB_RES:
if sm>=i[0] and sm<=i[1]:
t=i[2]
break
rd['test_sum_txt'] = TXT_START+t
Variable | Value |
---|---|
e_hdrs | [] |
hd0 | (3, 34, 'PS. Интересные детали', 36) |
i | 0 |
key | 2 |
p0 | 35 |
page | '35' |
page_hdrs | [{'a0': 313, 'h0': 4, 'txt': 'Разбор ответов'}] |
pd0 | {'a0': 313, 'h0': 4, 'txt': 'Разбор ответов'} |
rd | {'alt': ('грубая ошибка', 'есть небольшой позитив, но в целом ошибочно', 'частично правильно, но явно недостаточно', 'верное направление разговора, только формулировку стоит подшлифовать', 'отличный ответ'), 'e_structure': ((51, 'Пример 1. Звонок в офис', 4), (52, 'Пример 2. Холодный звонок (из базы данных банка)', 5), (53, 'Пример 3. Секретарский барьер', 6), (54, 'Пример 4. В салоне-магазине', 6), (55, 'Пример 5. Холодный звонок', 8), (56, 'Пример 6. Холодный звонок (клиент из примера 5, другой ' 'продавец)', 8), (57, 'Пример 7. Супермаркет электроники', 9), (58, 'Пример 8. Покупатель, ожидающий решения от продавца, пример ' 'правильной работы', 14), (59, 'Пример 9. Слова и эмоции', 18), (510, 'Пример 10. С-продавец.', 26), (511, 'Пример 11. Получение информации', 31), (512, 'Пример 12. Проблема с покупателем', 32)), 'example_hdrs': [], 'i_templ': 'book35.html', 'last_page': False, 'next_hdr': 'PS. Интересные детали', 'next_page': 36, 'page': 35, 'page_hdrs': [{'a0': 313, 'h0': 4, 'txt': 'Разбор ответов'}], 'prev_page': 34, 'pts': ('Да, это элитный набор, и цена соответствующая', 'Да, цена высокая, но за такой отличный набор это совсем не дорого', 'Тогда посмотрим сюда — вот похожий набор на 24 персоны за 299 000, ' 'тоже по акции', 'Тогда оставим этот набор, и вернемся чуть назад. Вам нужен ' 'праздничный набор. Какие у Вас к нему требования, пожелания? Каким ' 'он должен быть?', 'Хорошо, этот набор не подходит. Тогда какой нужен?', 'То есть, набор Вам в принципе нравится, но не подходит по цене. ' 'Тогда давайте начнем с цены. На какую сумму Вы ориентируетесь?', 'Я бы не стал спешить отказываться от этого набора только из-за цены. ' 'Смотрите, в этом наборе есть уже полный комплект абсолютно всего, ' 'включая индивидуальные соусники, 6 молочников, 6 супниц, а не 3, как ' 'обычно. Вы обеспечите 24 гостя, которых ожидаете, и у Вас будет ' 'запас, если это число неожиданно увеличится. Кроме того, обычно этот ' 'набор стоит 650 тысяч, и только сейчас уникальная возможность взять ' 'по акции за 461!', 'А что за праздник у Вас намечается?', 'Да, вопрос цены важен. Хотите, я Вам объясню, чем эта цена ' 'обоснована, какие преимущества у этого набора перед другими?', 'Набор подешевле тоже можно подобрать, но там всегда придется чем-то ' 'жертвовать. Здесь же набор максимально полный, и с хорошей скидкой. ' 'В общем, оставляю все на Ваше усмотрение. Если хотите, расскажу про ' 'этот набор, почему он столько стоит. Или можем посмотреть другой. ' 'Вам что предпочтительнее?'), 'share_ref': 'http://practicaldiagnostics.ru/book/', 'structure': ((1, 0, 'Продажа с Чистого Листа', 1), (2, 11, 'Предисловие', 1), (2, 12, 'Начни с головы', 1), (2, 13, 'Основная ошибка', 2), (2, 14, 'От мышления продавца — к мышлению клиента', 3), (2, 15, 'Мысли как <s>клиент</s> <span class="corr">покупатель</span>', 3), (2, 16, 'Метод «чистого листа»', 4), (3, 17, 'Принцип 1. Вас не существует', 4), (4, 19, 'Следствие 1.1. Вопрос <s>клиента</s> <span ' 'class="corr">покупателя</span> должен быть отвечен.', 5), (4, 110, 'Следствие 1.2. Не спешите со своей информацией.', 6), (4, 111, 'Следствие 1.3. Никогда не гадайте', 7), (4, 112, 'Следствие 1.4. Учитесь слушать', 7), (3, 18, '<s>Общая с… <trimmed 6896 bytes string> |
request | <WSGIRequest: GET '/book/35/'> |
sm | 0 |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTEXT_DOCUMENT_ROOT | '/var/www/htdocs/gr/htdocs' |
CONTEXT_PREFIX | '' |
DOCUMENT_ROOT | '/var/www/htdocs/gr/htdocs' |
GATEWAY_INTERFACE | 'CGI/1.1' |
HTTP_ACCEPT | '*/*' |
HTTP_HOST | 'practicaldiagnostics.ru' |
HTTP_USER_AGENT | 'claudebot' |
PATH_INFO | '/book/35/' |
PATH_TRANSLATED | '/var/www/htdocs/gr/htdocs/real/wsgi.py/book/35/' |
QUERY_STRING | '' |
REMOTE_ADDR | '54.173.43.215' |
REMOTE_PORT | '55600' |
REQUEST_METHOD | 'GET' |
REQUEST_SCHEME | 'http' |
REQUEST_URI | '/book/35/' |
SCRIPT_FILENAME | '/var/www/htdocs/gr/htdocs/real/wsgi.py' |
SCRIPT_NAME | '' |
SERVER_ADDR | '87.249.26.102' |
SERVER_ADMIN | 'support@practicaldiagnostics.ru' |
SERVER_NAME | 'practicaldiagnostics.ru' |
SERVER_PORT | '80' |
SERVER_PROTOCOL | 'HTTP/1.1' |
SERVER_SIGNATURE | '' |
SERVER_SOFTWARE | 'Apache' |
apache.version | (2, 4, 39) |
mod_wsgi.application_group | 'www.practicaldiagnostics.ru|' |
mod_wsgi.callable_object | 'application' |
mod_wsgi.enable_sendfile | '0' |
mod_wsgi.handler_script | '' |
mod_wsgi.ignore_activity | '0' |
mod_wsgi.listener_host | '' |
mod_wsgi.listener_port | '80' |
mod_wsgi.path_info | '/book/35/' |
mod_wsgi.process_group | '' |
mod_wsgi.request_handler | 'wsgi-script' |
mod_wsgi.request_id | 'NLb3Qz/SkNo' |
mod_wsgi.request_start | '1711627212142132' |
mod_wsgi.script_name | '' |
mod_wsgi.script_reloading | '1' |
mod_wsgi.script_start | '1711627212142453' |
mod_wsgi.thread_id | 18 |
mod_wsgi.thread_requests | 1 |
mod_wsgi.total_requests | 65 |
mod_wsgi.version | (4, 6, 5) |
wsgi.errors | <_io.TextIOWrapper name='<wsgi.errors>' encoding='utf-8'> |
wsgi.file_wrapper | '' |
wsgi.input | <mod_wsgi.Input object at 0x7f0c61947b90> |
wsgi.input_terminated | True |
wsgi.multiprocess | True |
wsgi.multithread | True |
wsgi.run_once | False |
wsgi.url_scheme | 'http' |
wsgi.version | (1, 0) |
real.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | ('grisha', 'grisha@practicaldiagnostics.ru') |
ALLOWED_HOSTS | ['.practicaldiagnostics.ru', '127.0.0.1'] |
APPEND_SLASH | True |
APP_DIR | 'service' |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | '/var/www/htdocs/gr/htdocs' |
BASE_TEMPL_DIR | '/var/www/htdocs/gr/htdocs/service/templates' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | 'Lax' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': 'localhost', 'NAME': 'practical', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'post_practical'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATETIME_FORMAT | 'd/m/y H:M' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y'] |
DATE_FORMAT | 'd/m/y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DB_NAME | '/var/www/htdocs/gr/htdocs/db/rds.db' |
DEBUG | True |
DEBUG_DB | False |
DEBUG_FALSE_TEST | False |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_CONTENT_TYPE | 'text/html' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'support@practicaldiagnostics.ru' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DEFAULT_WWW | 'http://practicaldiagnostics.ru' |
DESCRIPTION | 'Удобная практичная система тестирования деловых качеств' |
DISALLOWED_USER_AGENTS | [] |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'mail.wind.ru' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | 'grisha@practicaldiagnostics.ru' |
EMAIL_PORT | 465 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | True |
EMAIL_USE_TLS | False |
FILE_CHARSET | 'utf-8' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | None |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 1 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ['django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.staticfiles', 'service'] |
INTERNAL_IPS | [] |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('hy', 'Armenian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'ru-ru' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LOCALE_PATHS | [] |
LOGGING | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/login/' |
LOGOUT_REDIRECT_URL | None |
LOGOUT_URL | '/' |
MAIN_IMAGE | 'http://practicaldiagnostics.ru/static/service/pd_img600.png' |
MAIN_TITLE | 'Practical Diagnostics' |
MANAGERS | [] |
MEDIA_ROOT | '' |
MEDIA_URL | '' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
ROOT_URLCONF | 'real.urls' |
SALESBASE_PASSWORD | '********************' |
SALESBASE_USER | 'salesbase@practicaldiagnostics.ru' |
SBS_PASSWORD | '********************' |
SBS_USER | 'message@practicaldiagnostics.ru' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | False |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SERVE_LOCAL | False |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 2419200 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'real.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SMILE | '<img src="/static/service/smile.png">' |
SMILE_FILE | '' |
STATICFILES_DIRS | [] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/var/www/htdocs/gr/htdocs/service/static/service' |
STATIC_URL | '/static/' |
TECH_WORK | False |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/var/www/htdocs/gr/htdocs/service/templates/data', '/var/www/htdocs/gr/htdocs/service/templates/testing', '/var/www/htdocs/gr/htdocs/service/templates/book', '/var/www/htdocs/gr/htdocs/service/templates/articles', '/var/www/htdocs/gr/htdocs/service/templates/sales', '/var/www/htdocs/gr/htdocs/service/templates/mail', '/var/www/htdocs/gr/htdocs/service/templates/sales_base'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.template.context_processors.i18n', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.tz', 'django.template.context_processors.csrf', 'common.context_processors.mycontext']}}] |
TEMPLATE_CONTEXT_PROCESSORS | ('common.context_processors.mycontext', 'django.contrib.auth.context_processors.auth', 'django.core.context_processors.debug', 'django.core.context_processors.i18n', 'django.core.context_processors.media', 'django.core.context_processors.static', 'django.core.context_processors.tz', 'django.core.context_processors.request') |
TEMPLATE_DEBUG | True |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'Europe/Moscow' |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'real.wsgi.application' |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
YEAR_MONTH_FORMAT | 'F Y' |
You're seeing this error because you have DEBUG = True
in your
Django settings file. Change that to False
, and Django will
display a standard page generated by the handler for this status code.