'NoneType' object has no attribute 'original'
Request Method: | GET |
---|---|
Request URL: | http://t-v.te.ua/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/ |
Django Version: | 1.8.6 |
Exception Type: | AttributeError |
Exception Value: | 'NoneType' object has no attribute 'original' |
Exception Location: | /var/www/tv2/tv/apps/blog/models.py in get_title_image_url, line 95 |
Python Executable: | /home/tv/.virtualenvs/tv2/bin/python |
Python Version: | 2.7.18 |
Python Path: | ['/var/www/tv2', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages'] |
Server time: | Чт, 28 Бер 2024 19:30:09 +0200 |
In template /var/www/tv2/tv/apps/blog/templates/blog_pages/news_current.html
, error at line 36
26 | <script type="text/javascript"> |
---|---|
27 | jQuery( document ).ready(function( $ ) { |
28 | $(".fancybox").fancybox(); |
29 | }); |
30 | </script> |
31 | |
32 | <meta property="fb:admins" content="http://graph.facebook.com/ternopil.vechirniy"/> |
33 | <meta property="og:title" content="{{ news.title }}" /> |
34 | <meta property="og:description" content="{{ news.body|striptags|truncatewords:60 }}"/> |
35 | <meta property="og:url" content="{{news.get_url}}"/> |
36 | <meta property="og:image" content=" {{ news.get_title_image_url}} "/> |
37 | <meta property="og:type" content="article"/> |
38 | <meta property="og:site_name" content="Тернопіль вечірній"/> |
39 | {% endblock %} |
40 | |
41 | {% block body_ext %} |
42 | <div id="fb-root"></div> |
43 | <script>(function(d, s, id) { |
44 | var js, fjs = d.getElementsByTagName(s)[0]; |
45 | if (d.getElementById(id)) return; |
46 | js = d.createElement(s); js.id = id; |
/home/tv/.virtualenvs/tv2/lib/python2.7/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:
# If the view raised an exception, run it through exception
# middleware, and if the exception middleware returns a
# response, use that. Otherwise, reraise the exception.
for middleware_method in self._exception_middleware:
response = middleware_method(request, e)
Variable | Value |
---|---|
e | AttributeError("'NoneType' object has no attribute 'original'",) |
callback_args | () |
resolver_match | ResolverMatch(func=tv.common.views.wrapper, args=(), kwargs={'slug2': u'sho-robiti-yaksho-printer-perestav-drukuvati', 'slug1': u'korysne'}, url_name=news_current, app_name=None, namespaces=[]) |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f974c9a2e90>> |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f974efe3b10> |
request | "<WSGIRequest\npath:/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/,\nGET:<QueryDict: {}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{},\nMETA:{'CONTENT_LENGTH': '',\n 'CONTENT_TYPE': '',\n u'CSRF_COOKIE': u'R2C8xNGIAo2GqSX2E3dcw7WQm0yjaiHo',\n 'DOCUMENT_ROOT': '/var/www/tv/tv',\n 'DOCUMENT_URI': '/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/',\n 'GATEWAY_INTERFACE': 'CGI/1.1',\n 'HTTP_ACCEPT': '*/*',\n 'HTTP_HOST': 't-v.te.ua',\n 'HTTP_USER_AGENT': 'claudebot',\n 'PATH_INFO': u'/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/',\n 'QUERY_STRING': '',\n 'REMOTE_ADDR': '44.203.58.132',\n 'REMOTE_USER': '',\n 'REQUEST_METHOD': 'GET',\n 'REQUEST_URI': '/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/',\n 'SCRIPT_NAME': u'',\n 'SERVER_NAME': 't-v.te.ua',\n 'SERVER_PORT': '80',\n 'SERVER_PROTOCOL': 'HTTP/1.1',\n 'SERVER_SOFTWARE': 'nginx',\n 'wsgi.errors': <flup.server.fcgi_base.TeeOutputStream object at 0x7f97428340d0>,\n 'wsgi.input': <flup.server.fcgi_base.InputStream object at 0x7f974b99d150>,\n 'wsgi.multiprocess': True,\n 'wsgi.multithread': False,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'http',\n 'wsgi.version': (1, 0)}>" |
callback | <function wrapper at 0x7f974c8c6a50> |
wrapped_callback | <function wrapper at 0x7f974c8c6a50> |
resolver | <RegexURLResolver 'tv.urls' (None:None) ^/> |
callback_kwargs | {'slug1': u'korysne', 'slug2': u'sho-robiti-yaksho-printer-perestav-drukuvati'} |
response | None |
urlconf | 'tv.urls' |
/var/www/tv2/tv/common/views.py
in wrapper
super(JSONResponse, self).__init__(output, mimetype="text/javascript")
def render_to(template):
def renderer(func):
def wrapper(request, *args, **kw):
output = func(request, *args, **kw)
if isinstance(output, (list, tuple)):
return render_to_response(output[1], output[0], RequestContext(request))...
elif isinstance(output, dict):
return render_to_response(template, output, RequestContext(request))
return output
return wrapper
return renderer
Variable | Value |
---|---|
template | '' |
args | () |
request | "<WSGIRequest\npath:/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/,\nGET:<QueryDict: {}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{},\nMETA:{'CONTENT_LENGTH': '',\n 'CONTENT_TYPE': '',\n u'CSRF_COOKIE': u'R2C8xNGIAo2GqSX2E3dcw7WQm0yjaiHo',\n 'DOCUMENT_ROOT': '/var/www/tv/tv',\n 'DOCUMENT_URI': '/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/',\n 'GATEWAY_INTERFACE': 'CGI/1.1',\n 'HTTP_ACCEPT': '*/*',\n 'HTTP_HOST': 't-v.te.ua',\n 'HTTP_USER_AGENT': 'claudebot',\n 'PATH_INFO': u'/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/',\n 'QUERY_STRING': '',\n 'REMOTE_ADDR': '44.203.58.132',\n 'REMOTE_USER': '',\n 'REQUEST_METHOD': 'GET',\n 'REQUEST_URI': '/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/',\n 'SCRIPT_NAME': u'',\n 'SERVER_NAME': 't-v.te.ua',\n 'SERVER_PORT': '80',\n 'SERVER_PROTOCOL': 'HTTP/1.1',\n 'SERVER_SOFTWARE': 'nginx',\n 'wsgi.errors': <flup.server.fcgi_base.TeeOutputStream object at 0x7f97428340d0>,\n 'wsgi.input': <flup.server.fcgi_base.InputStream object at 0x7f974b99d150>,\n 'wsgi.multiprocess': True,\n 'wsgi.multithread': False,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'http',\n 'wsgi.version': (1, 0)}>" |
kw | {'slug1': u'korysne', 'slug2': u'sho-robiti-yaksho-printer-perestav-drukuvati'} |
func | <function news_current at 0x7f974c92ea50> |
output | ({'category': <Category: Здоров'я>, 'news': <Post: Що робити, якщо принтер перестав друкувати?>}, 'blog_pages/news_current.html') |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/shortcuts.py
in render_to_response
# No deprecated arguments were passed - use the new code path
content = loader.render_to_string(template_name, context, using=using)
else:
# Some deprecated arguments were passed - use the legacy code path
content = loader.render_to_string(
template_name, context, context_instance, dirs, dictionary,
using=using)...
return HttpResponse(content, content_type, status)
def render(request, template_name, context=None,
context_instance=_context_instance_undefined,
Variable | Value |
---|---|
dirs | <object object at 0x7f974eb3fef0> |
status | None |
content_type | None |
dictionary | <object object at 0x7f974eb3fee0> |
template_name | 'blog_pages/news_current.html' |
context_instance | [{'False': False, 'None': None, 'True': True}, {}, {}] |
context | {'category': <Category: Здоров'я>, 'news': <Post: Що робити, якщо принтер перестав друкувати?>} |
using | None |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/loader.py
in render_to_string
if isinstance(engine, DjangoTemplates):
if request is not None:
raise ValueError(
"render_to_string doesn't support the request argument "
"when some deprecated arguments are passed.")
# Hack -- use the internal Engine instance of DjangoTemplates.
return engine.engine.render_to_string(
template_name, context, context_instance, dirs, dictionary)...
elif context_instance is not _context_instance_undefined:
warnings.warn(
"Skipping template backend %s because its render_to_string "
"method doesn't support the context_instance argument." %
engine.name, stacklevel=2)
elif dirs is not _dirs_undefined:
Variable | Value |
---|---|
engine | <django.template.backends.django.DjangoTemplates object at 0x7f974c8d0490> |
dirs | <object object at 0x7f974eb3fef0> |
dictionary | <object object at 0x7f974eb3fee0> |
template_name | 'blog_pages/news_current.html' |
request | None |
context_instance | [{'False': False, 'None': None, 'True': True}, {}, {}] |
context | {'category': <Category: Здоров'я>, 'news': <Post: Що робити, якщо принтер перестав друкувати?>} |
using | None |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/engine.py
in render_to_string
else:
return t.render(Context(context))
if not context:
return t.render(context_instance)
# Add the context to the context stack, ensuring it gets removed again
# to keep the context_instance in the same state it started in.
with context_instance.push(context):
return t.render(context_instance)...
def select_template(self, template_name_list, dirs=_dirs_undefined):
"""
Given a list of template names, returns the first that can be loaded.
"""
if dirs is _dirs_undefined:
Variable | Value |
---|---|
dirs | <object object at 0x7f974eb3fef0> |
dictionary | None |
template_name | 'blog_pages/news_current.html' |
self | <django.template.engine.Engine object at 0x7f974c8d0350> |
t | <django.template.base.Template object at 0x7f9742834910> |
context | {'category': <Category: Здоров'я>, 'news': <Post: Що робити, якщо принтер перестав друкувати?>} |
context_instance | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in render
def render(self, context):
"Display stage -- can be called many times"
context.render_context.push()
try:
if context.template is None:
with context.bind_template(self):
return self._render(context)...
else:
return self._render(context)
finally:
context.render_context.pop()
Variable | Value |
---|---|
self | <django.template.base.Template object at 0x7f9742834910> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in _render
def __iter__(self):
for node in self.nodelist:
for subnode in node:
yield subnode
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
context.render_context.push()
try:
if context.template is None:
Variable | Value |
---|---|
self | <django.template.base.Template object at 0x7f9742834910> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = self.render_node(node, context)...
else:
bit = node
bits.append(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
node | <ExtendsNode: extends "layouts/right_sidebar.html"> |
self | [<ExtendsNode: extends "layouts/right_sidebar.html">] |
bits | [] |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/debug.py
in render_node
if not hasattr(e, 'django_template_source'):
e.django_template_source = token.source
class DebugNodeList(NodeList):
def render_node(self, node, context):
try:
return node.render(context)...
except Exception as e:
if not hasattr(e, 'django_template_source'):
e.django_template_source = node.source
raise
Variable | Value |
---|---|
node | <ExtendsNode: extends "layouts/right_sidebar.html"> |
self | [<ExtendsNode: extends "layouts/right_sidebar.html">] |
e | AttributeError("'NoneType' object has no attribute 'original'",) |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/loader_tags.py
in render
blocks = {n.name: n for n in
compiled_parent.nodelist.get_nodes_by_type(BlockNode)}
block_context.add_blocks(blocks)
break
# Call Template._render explicitly so the parser context stays
# the same.
return compiled_parent._render(context)...
class IncludeNode(Node):
def __init__(self, template, *args, **kwargs):
self.template = template
self.extra_context = kwargs.pop('extra_context', {})
Variable | Value |
---|---|
node | <ExtendsNode: extends "base.html"> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f9742834110> |
compiled_parent | <django.template.base.Template object at 0x7f9742837290> |
self | <ExtendsNode: extends "layouts/right_sidebar.html"> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in _render
def __iter__(self):
for node in self.nodelist:
for subnode in node:
yield subnode
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
context.render_context.push()
try:
if context.template is None:
Variable | Value |
---|---|
self | <django.template.base.Template object at 0x7f9742837290> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = self.render_node(node, context)...
else:
bit = node
bits.append(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
node | <ExtendsNode: extends "base.html"> |
self | [<ExtendsNode: extends "base.html">] |
bits | [] |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/debug.py
in render_node
if not hasattr(e, 'django_template_source'):
e.django_template_source = token.source
class DebugNodeList(NodeList):
def render_node(self, node, context):
try:
return node.render(context)...
except Exception as e:
if not hasattr(e, 'django_template_source'):
e.django_template_source = node.source
raise
Variable | Value |
---|---|
node | <ExtendsNode: extends "base.html"> |
self | [<ExtendsNode: extends "base.html">] |
e | AttributeError("'NoneType' object has no attribute 'original'",) |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/loader_tags.py
in render
blocks = {n.name: n for n in
compiled_parent.nodelist.get_nodes_by_type(BlockNode)}
block_context.add_blocks(blocks)
break
# Call Template._render explicitly so the parser context stays
# the same.
return compiled_parent._render(context)...
class IncludeNode(Node):
def __init__(self, template, *args, **kwargs):
self.template = template
self.extra_context = kwargs.pop('extra_context', {})
Variable | Value |
---|---|
node | <Block Node: title. Contents: []> |
blocks | {u'active_menu_ato': <Block Node: active_menu_ato. Contents: []>, u'active_menu_dacha': <Block Node: active_menu_dacha. Contents: []>, u'active_menu_ekonomika': <Block Node: active_menu_ekonomika. Contents: []>, u'active_menu_homepage': <Block Node: active_menu_homepage. Contents: []>, u'active_menu_korysne': <Block Node: active_menu_korysne. Contents: []>, u'active_menu_kultura': <Block Node: active_menu_kultura. Contents: []>, u'active_menu_osobistosti': <Block Node: active_menu_osobistosti. Contents: []>, u'active_menu_osvita': <Block Node: active_menu_osvita. Contents: []>, u'active_menu_podiyi': <Block Node: active_menu_podiyi. Contents: []>, u'active_menu_sport': <Block Node: active_menu_sport. Contents: []>, u'active_menu_suspilstvo': <Block Node: active_menu_suspilstvo. Contents: []>, u'active_menu_vlada': <Block Node: active_menu_vlada. Contents: []>, u'active_menu_zhkg': <Block Node: active_menu_zhkg. Contents: []>, u'body_extra': <Block Node: body_extra. Contents: []>, u'bottom_js': <Block Node: bottom_js. Contents: []>, u'featured_content': <Block Node: featured_content. Contents: []>, u'head_extra': <Block Node: head_extra. Contents: []>, u'page_content': <Block Node: page_content. Contents: []>, u'title': <Block Node: title. Contents: []>} |
block_context | <django.template.loader_tags.BlockContext object at 0x7f9742834110> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
compiled_parent | <django.template.base.Template object at 0x7f974956add0> |
self | <ExtendsNode: extends "base.html"> |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in _render
def __iter__(self):
for node in self.nodelist:
for subnode in node:
yield subnode
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
context.render_context.push()
try:
if context.template is None:
Variable | Value |
---|---|
self | <django.template.base.Template object at 0x7f974956add0> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = self.render_node(node, context)...
else:
bit = node
bits.append(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
node | <Block Node: head_extra. Contents: []> |
bit | u'\n ' |
bits | [u'<!DOCTYPE html>\n<!--[if IE 7]>\n<html class="ie ie7 no-js" lang="uk-UA">\n<![endif]-->\n<!--[if IE 8]>\n<html class="ie ie8 no-js" lang="uk-UA">\n<![endif]-->\n<!--[if !(IE 7) | !(IE 8) ]><!-->\n<html class="no-js" lang="uk-UA">\n<!--<![endif]-->\n <head>\n <meta charset="UTF-8"/>\n <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/>\n <title>', u'\u0429\u043e \u0440\u043e\u0431\u0438\u0442\u0438, \u044f\u043a\u0449\u043e \u043f\u0440\u0438\u043d\u0442\u0435\u0440 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0432 \u0434\u0440\u0443\u043a\u0443\u0432\u0430\u0442\u0438?', u' | \u0422\u0435\u0440\u043d\u043e\u043f\u0456\u043b\u044c \u0432\u0435\u0447\u0456\u0440\u043d\u0456\u0439</title>\n ', u'\n\n<link rel="profile" href="http://gmpg.org/xfn/11"/>\n\n\n<meta name=\'robots\' content=\'index,follow\' />\n<meta name="generator" content="Django framework"/>\n<meta name="msvalidate.01" content="2E9B7C95CF0738C0A946892848E71328" />\n<meta name="author" content="Svyatoslav Zhurovskyy" />\n<link href=\'/feed/\' type=\'application/rss+xml\' rel="alternate" title="\u0422\u0435\u0440\u043d\u043e\u043f\u0456\u043b\u044c \u0432\u0435\u0447\u0456\u0440\u043d\u0456\u0439 RSS" />\n<link rel="icon" type="image/x-icon" href="/media/v2/ico/favicon.ico?rnd=C8GW0PXQ" />\n\n\n\n\n<link rel=\'stylesheet\' id=\'walk-shortcodes-css\' href=\'/media/v2/css/walk-shortcodes.css?rand=DKHPSQBU\' type=\'text/css\' media=\'all\'/>\n<link rel=\'stylesheet\' id=\'contact-form-7-css\' href=\'/media/v2/css/styles.css?rand=KYOQ2T4U\' type=\'text/css\' media=\'all\'/>\n<link rel=\'stylesheet\' id=\'walk-fonts-css\' href=\'http://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,400,700&subset=latin,latin-ext\' type=\'text/css\' media=\'all\'/>\n<link rel=\'stylesheet\' id=\'walk-style-css\' href=\'/media/v2/css/style.css?rand=96WLA4E7\' type=\'text/css\' media=\'all\'/>\n<link href=\'/media/v2/css/tags.css?rand=4DUIFYM2\' rel=\'stylesheet\' type="text/css"/>\n<!--[if lt IE 9]>\n <link rel=\'stylesheet\' id=\'walk-ie-css\' href=\'/media/v2/css/ie.css?rand=DBO4YQP5\' type=\'text/css\' media=\'all\' />\n<![endif]-->\n<link rel=\'stylesheet\' id=\'walk-responsive-css\' href=\'/media/v2/css/responsive.css?rand=SAWCLHMX\' type=\'text/css\' media=\'all\'/>\n<link rel=\'stylesheet\' id=\'prettyphoto-css\' href=\'/media/v2/css/prettyPhoto.css?rand=6H38W2A4\' type=\'text/css\' media=\'all\'/>\n<link rel=\'stylesheet\' id=\'walk-user-css\' href=\'/media/v2/css/user.css?rand=FE4UT5XJ\' type=\'text/css\' media=\'all\'/>\n\n<!-- <script type=\'text/javascript\' src=\'/media/v2/js/jquery.js?rand=OJP0MTLF\'></script> -->\n<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>\n<script type=\'text/javascript\' src=\'http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js\'></script>\n<script type=\'text/javascript\' src=\'/media/v2/js/jquery-migrate.min.js?rand=UX8DW4Z7\'></script>\n<script type=\'text/javascript\' src=\'/media/v2/js/jquery.cookie.js?rand=UX4K3DVE\'></script>\n<script type="text/javascript" src="/media/js/csrf.js"></script>\n\n\n<!--[if lt IE 9]>\n<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>\n<![endif]-->\n\n\n<!-- Global site tag (gtag.js) - Google Analytics -->\n<script async src="https://www.googletagmanager.com/gtag/js?id=UA-138970816-1"></script>\n<script>\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag(\'js\', new Date());\n\n gtag(\'config\', \'UA-138970816-1\');\n</script>\n\n\n<script data-ad-client="ca-pub-9469947087236287" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>', u'\n '] |
self | [<Text Node: '<!DOCTYPE html> <!--[if I'>, <Block Node: title. Contents: []>, <Text Node: ' | ????????? ????????</ti'>, <django.template.loader_tags.IncludeNode object at 0x7f974956a0d0>, <Text Node: ' '>, <Block Node: head_extra. Contents: []>, <Text Node: ' </head> <body c'>, <Block Node: body_extra. Contents: []>, <Text Node: ' <div id="page" c'>, <django.template.loader_tags.IncludeNode object at 0x7f97490b4850>, <Text Node: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f97490b4590>, <Text Node: ' <div class="'>, <Block Node: active_menu_homepage. Contents: []>, <Text Node: '"> '>, <django.template.defaulttags.URLNode object at 0x7f974b984550>, <Text Node: '">???????</a> '>, <Block Node: active_menu_vlada. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_ato. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_ekonomika. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_zhkg. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_korysne. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_kultura. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_osvita. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_osobistosti. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_podiyi. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_sport. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_suspilstvo. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_dacha. Contents: []>, <Text Node: '"> '>, <Block Node: featured_content. Contents: []>, <Text Node: ' <div cl'>, <Block Node: page_content. Contents: []>, <Text Node: ' </di'>, <django.template.loader_tags.IncludeNode object at 0x7f974b9848d0>, <Text Node: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f974b9840d0>, <Text Node: ' </div> '>, <django.template.loader_tags.IncludeNode object at 0x7f974b984a90>, <Text Node: ' </div> <'>, <Block Node: bottom_js. Contents: []>, <Text Node: ' </body> </html>'>] |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/debug.py
in render_node
if not hasattr(e, 'django_template_source'):
e.django_template_source = token.source
class DebugNodeList(NodeList):
def render_node(self, node, context):
try:
return node.render(context)...
except Exception as e:
if not hasattr(e, 'django_template_source'):
e.django_template_source = node.source
raise
Variable | Value |
---|---|
node | <Block Node: head_extra. Contents: []> |
self | [<Text Node: '<!DOCTYPE html> <!--[if I'>, <Block Node: title. Contents: []>, <Text Node: ' | ????????? ????????</ti'>, <django.template.loader_tags.IncludeNode object at 0x7f974956a0d0>, <Text Node: ' '>, <Block Node: head_extra. Contents: []>, <Text Node: ' </head> <body c'>, <Block Node: body_extra. Contents: []>, <Text Node: ' <div id="page" c'>, <django.template.loader_tags.IncludeNode object at 0x7f97490b4850>, <Text Node: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f97490b4590>, <Text Node: ' <div class="'>, <Block Node: active_menu_homepage. Contents: []>, <Text Node: '"> '>, <django.template.defaulttags.URLNode object at 0x7f974b984550>, <Text Node: '">???????</a> '>, <Block Node: active_menu_vlada. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_ato. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_ekonomika. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_zhkg. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_korysne. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_kultura. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_osvita. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_osobistosti. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_podiyi. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_sport. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_suspilstvo. Contents: []>, <Text Node: '"> '>, <Block Node: active_menu_dacha. Contents: []>, <Text Node: '"> '>, <Block Node: featured_content. Contents: []>, <Text Node: ' <div cl'>, <Block Node: page_content. Contents: []>, <Text Node: ' </di'>, <django.template.loader_tags.IncludeNode object at 0x7f974b9848d0>, <Text Node: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f974b9840d0>, <Text Node: ' </div> '>, <django.template.loader_tags.IncludeNode object at 0x7f974b984a90>, <Text Node: ' </div> <'>, <Block Node: bottom_js. Contents: []>, <Text Node: ' </body> </html>'>] |
e | AttributeError("'NoneType' object has no attribute 'original'",) |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/loader_tags.py
in render
push = block = block_context.pop(self.name)
if block is None:
block = self
# Create new block so we can store context without thread-safety issues.
block = type(self)(block.name, block.nodelist)
block.context = context
context['block'] = block
result = block.nodelist.render(context)...
if push is not None:
block_context.push(self.name, push)
return result
def super(self):
if not hasattr(self, 'context'):
Variable | Value |
---|---|
push | <Block Node: head_extra. Contents: [<Text Node: ' '>, <Block Node: head_ext. Contents: []>, <Text Node: ' '>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f9742834110> |
block | <Block Node: head_extra. Contents: [<Text Node: ' '>, <Block Node: head_ext. Contents: []>, <Text Node: ' '>]> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
self | <Block Node: head_extra. Contents: []> |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = self.render_node(node, context)...
else:
bit = node
bits.append(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
node | <Block Node: head_ext. Contents: []> |
bit | u'\n ' |
bits | [u'\n '] |
self | [<Text Node: ' '>, <Block Node: head_ext. Contents: []>, <Text Node: ' '>] |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/debug.py
in render_node
if not hasattr(e, 'django_template_source'):
e.django_template_source = token.source
class DebugNodeList(NodeList):
def render_node(self, node, context):
try:
return node.render(context)...
except Exception as e:
if not hasattr(e, 'django_template_source'):
e.django_template_source = node.source
raise
Variable | Value |
---|---|
node | <Block Node: head_ext. Contents: []> |
self | [<Text Node: ' '>, <Block Node: head_ext. Contents: []>, <Text Node: ' '>] |
e | AttributeError("'NoneType' object has no attribute 'original'",) |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/loader_tags.py
in render
push = block = block_context.pop(self.name)
if block is None:
block = self
# Create new block so we can store context without thread-safety issues.
block = type(self)(block.name, block.nodelist)
block.context = context
context['block'] = block
result = block.nodelist.render(context)...
if push is not None:
block_context.push(self.name, push)
return result
def super(self):
if not hasattr(self, 'context'):
Variable | Value |
---|---|
push | <Block Node: head_ext. Contents: [<Text Node: ' <script type="text/j'>, <Variable Node: news.title>, <Text Node: '" /> <meta property="'>, <Variable Node: news.body|striptags|truncatewords:60>, <Text Node: '"/> <meta property="o'>, <Variable Node: news.get_url>, <Text Node: '"/> <meta property="o'>, <Variable Node: news.get_title_image_url>, <Text Node: '"/> <meta property="o'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f9742834110> |
block | <Block Node: head_ext. Contents: [<Text Node: ' <script type="text/j'>, <Variable Node: news.title>, <Text Node: '" /> <meta property="'>, <Variable Node: news.body|striptags|truncatewords:60>, <Text Node: '"/> <meta property="o'>, <Variable Node: news.get_url>, <Text Node: '"/> <meta property="o'>, <Variable Node: news.get_title_image_url>, <Text Node: '"/> <meta property="o'>]> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
self | <Block Node: head_ext. Contents: []> |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = self.render_node(node, context)...
else:
bit = node
bits.append(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
node | <Variable Node: news.get_title_image_url> |
bit | u'"/>\n <meta property="og:image" content="' |
bits | [u'\n <script type="text/javascript" src="/media/v2/js/jquery.mousewheel-3.0.6.pack.js"></script>\n <script type="text/javascript" src="/media/fancyBox/jquery.fancybox.pack.js"></script>\n <script type="text/javascript" src="/media/fancyBox/helpers/jquery.fancybox-buttons.js"></script>\n <script type="text/javascript" src="/media/fancyBox/helpers/jquery.fancybox-media.js"></script>\n <script type="text/javascript" src="/media/fancyBox/helpers/jquery.fancybox-thumbs.js"></script>\n <link rel="stylesheet" href="/media/fancyBox/jquery.fancybox.css" type="text/css" media="screen" />\n <link rel="stylesheet" href="/media/fancyBox/helpers/jquery.fancybox-buttons.css" type="text/css" media="screen" />\n <link rel="stylesheet" href="/media/fancyBox/helpers/jquery.fancybox-thumbs.css" type="text/css" media="screen" />\n <script type="text/javascript">\n jQuery( document ).ready(function( $ ) {\n $(".fancybox").fancybox();\n });\n </script>\n\n <meta property="fb:admins" content="http://graph.facebook.com/ternopil.vechirniy"/>\n <meta property="og:title" content="', u'\u0429\u043e \u0440\u043e\u0431\u0438\u0442\u0438, \u044f\u043a\u0449\u043e \u043f\u0440\u0438\u043d\u0442\u0435\u0440 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0432 \u0434\u0440\u0443\u043a\u0443\u0432\u0430\u0442\u0438?', u'" />\n <meta property="og:description" content="', u'\u041a\u0443\u043f\u0443\u044e\u0447\u0438 \u043f\u0440\u0438\u043d\u0442\u0435\u0440, \u043a\u0441\u0435\u0440\u043e\u043a\u0441 \u0447\u0438 \u043c\u0443\u043b\u044c\u0442\u0438\u0444\u0443\u043d\u043a\u0446\u0456\u043e\u043d\u0430\u043b\u044c\u043d\u0438\u0439 \u043f\u0440\u0438\u0441\u0442\u0440\u0456\u0439 \u043c\u0438 \u043f\u043e\u0432\u0438\u043d\u043d\u0456 \u0440\u043e\u0437\u0443\u043c\u0456\u0442\u0438, \u0449\u043e \u0431\u0443\u0434\u0435\u043c\u043e \u0437\u043c\u0443\u0448\u0435\u043d\u0456 \u043f\u043e\u0441\u0442\u0456\u0439\u043d\u043e \u0434\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e \u0432\u0438\u0442\u0440\u0430\u0447\u0430\u0442\u0438 \u0433\u0440\u043e\u0448\u0456 \u043d\u0430 \u043a\u0443\u043f\u0456\u0432\u043b\u044e \u043e\u0440\u0438\u0433\u0456\u043d\u0430\u043b\u044c\u043d\u0438\u0445 \u0432\u0438\u0442\u0440\u0430\u0442\u043d\u0438\u0445 \u043c\u0430\u0442\u0435\u0440\u0456\u0430\u043b\u0456\u0432. \u0422\u0430\u043a\u0430 \u0441\u0438\u0442\u0443\u0430\u0446\u0456\u044f \u0434\u0443\u0436\u0435 \u0432\u0438\u0433\u0456\u0434\u043d\u0430 \u0432\u0438\u0440\u043e\u0431\u043d\u0438\u043a\u0430\u043c \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u0456\u0432 \u0456 \u043a\u043e\u043f\u0456\u044e\u0432\u0430\u043b\u044c\u043d\u0438\u0445 \u0430\u043f\u0430\u0440\u0430\u0442\u0456\u0432. \u041d\u0430\u0448 \u0441\u0435\u0440\u0432\u0456\u0441 \u043f\u0440\u043e\u043f\u043e\u043d\u0443\u0454\u043c\u043e \u0412\u0430\u043c \u0456\u0441\u0442\u043e\u0442\u043d\u043e \u0441\u043a\u043e\u0440\u043e\u0442\u0438\u0442\u0438 \u0432\u0438\u0442\u0440\u0430\u0442\u0438, \u0437\u0430 \u0440\u0430\u0445\u0443\u043d\u043e\u043a \u0437\u0430\u043f\u0440\u0430\u0432\u043e\u043a \u0442\u0430 \u0432\u0456\u0434\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0456\u0441\u043d\u0443\u044e\u0447\u0438\u0445 \u043a\u0430\u0440\u0442\u0440\u0438\u0434\u0436\u0456\u0432, \u0430 \u043d\u0435 \u043a\u0443\u043f\u0443\u044e\u0447\u0438 \u043e\u0440\u0438\u0433\u0456\u043d\u0430\u043b\u044c\u043d\u0456.\u0417\u0430\u043f\u0440\u0430\u0432\u043a\u0430 \u043a\u0430\u0440\u0442\u0440\u0438\u0434\u0436\u0456\u0432 \u0437\u0430\u0431\u0435\u0437\u043f\u0435\u0447\u0443\u0454 \u0437\u043d\u0430\u0447\u043d\u0435 \u0437\u0434\u0435\u0448\u0435\u0432\u043b\u0435\u043d\u043d\u044f \u0432\u0430\u0440\u0442\u043e\u0441\u0442\u0456 \u0434\u0440\u0443\u043a\u0443, \u043e\u0441\u043a\u0456\u043b\u044c\u043a\u0438 \u0454 \u043d\u0430\u0431\u0430\u0433\u0430\u0442\u043e \u0434\u0435\u0448\u0435\u0432\u0448\u043e\u044e \u0437\u0430 \u043a\u0443\u043f\u0456\u0432\u043b\u044e ...', u'"/>\n <meta property="og:url" content="', u'http://t-v... <trimmed 4208 bytes string> |
self | [<Text Node: ' <script type="text/j'>, <Variable Node: news.title>, <Text Node: '" /> <meta property="'>, <Variable Node: news.body|striptags|truncatewords:60>, <Text Node: '"/> <meta property="o'>, <Variable Node: news.get_url>, <Text Node: '"/> <meta property="o'>, <Variable Node: news.get_title_image_url>, <Text Node: '"/> <meta property="o'>] |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/debug.py
in render_node
if not hasattr(e, 'django_template_source'):
e.django_template_source = token.source
class DebugNodeList(NodeList):
def render_node(self, node, context):
try:
return node.render(context)...
except Exception as e:
if not hasattr(e, 'django_template_source'):
e.django_template_source = node.source
raise
Variable | Value |
---|---|
node | <Variable Node: news.get_title_image_url> |
self | [<Text Node: ' <script type="text/j'>, <Variable Node: news.title>, <Text Node: '" /> <meta property="'>, <Variable Node: news.body|striptags|truncatewords:60>, <Text Node: '"/> <meta property="o'>, <Variable Node: news.get_url>, <Text Node: '"/> <meta property="o'>, <Variable Node: news.get_title_image_url>, <Text Node: '"/> <meta property="o'>] |
e | AttributeError("'NoneType' object has no attribute 'original'",) |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/debug.py
in render
e.django_template_source = node.source
raise
class DebugVariableNode(VariableNode):
def render(self, context):
try:
output = self.filter_expression.resolve(context)...
output = template_localtime(output, use_tz=context.use_tz)
output = localize(output, use_l10n=context.use_l10n)
output = force_text(output)
except UnicodeDecodeError:
return ''
except Exception as e:
Variable | Value |
---|---|
self | <Variable Node: news.get_title_image_url> |
e | AttributeError("'NoneType' object has no attribute 'original'",) |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in resolve
self.filters = filters
self.var = var_obj
def resolve(self, context, ignore_failures=False):
if isinstance(self.var, Variable):
try:
obj = self.var.resolve(context)...
except VariableDoesNotExist:
if ignore_failures:
obj = None
else:
string_if_invalid = context.template.engine.string_if_invalid
if string_if_invalid:
Variable | Value |
---|---|
self | <django.template.base.FilterExpression object at 0x7f974959bf50> |
ignore_failures | False |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in resolve
var)
self.lookups = tuple(var.split(VARIABLE_ATTRIBUTE_SEPARATOR))
def resolve(self, context):
"""Resolve this variable against a given context."""
if self.lookups is not None:
# We're dealing with a variable that needs to be resolved
value = self._resolve_lookup(context)...
else:
# We're dealing with a literal, so it's already been "resolved"
value = self.literal
if self.translate:
if self.message_context:
return pgettext_lazy(self.message_context, value)
Variable | Value |
---|---|
self | <Variable: u'news.get_title_image_url'> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in _resolve_lookup
if callable(current):
if getattr(current, 'do_not_call_in_templates', False):
pass
elif getattr(current, 'alters_data', False):
current = context.template.engine.string_if_invalid
else:
try: # method call (assuming no args required)
current = current()...
except TypeError:
try:
inspect.getcallargs(current)
except TypeError: # arguments *were* required
current = context.template.engine.string_if_invalid # invalid method call
else:
Variable | Value |
---|---|
current | <bound method Post.get_title_image_url of <Post: Що робити, якщо принтер перестав друкувати?>> |
bit | u'get_title_image_url' |
e | AttributeError("'NoneType' object has no attribute 'original'",) |
self | <Variable: u'news.get_title_image_url'> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/var/www/tv2/tv/apps/blog/models.py
in get_title_image_url
def get_absolute_url(self):
return ('news_current', None, {'slug1':self.categories.slug, 'slug2':self.slug, })
def get_url(self):
return "http://%s/%s/%s/" % (Site.objects.get_current(),self.categories.slug, self.slug)
def get_title_image_url(self):
return "http://%s/media/%s" % (Site.objects.get_current(), self.title_image.original)...
def get_rss_date(self):
p_date = self.publish.strftime("%a, %d %b %Y %H:%M:%S")
return p_date
def get_previous_post(self):
Variable | Value |
---|---|
self | <Post: Що робити, якщо принтер перестав друкувати?> |
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
SERVER_SOFTWARE | 'nginx' |
SCRIPT_NAME | u'' |
REQUEST_METHOD | 'GET' |
PATH_INFO | u'/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/' |
SERVER_PROTOCOL | 'HTTP/1.1' |
QUERY_STRING | '' |
CONTENT_LENGTH | '' |
REMOTE_USER | '' |
SERVER_NAME | 't-v.te.ua' |
REMOTE_ADDR | '44.203.58.132' |
wsgi.url_scheme | 'http' |
SERVER_PORT | '80' |
DOCUMENT_ROOT | '/var/www/tv/tv' |
DOCUMENT_URI | '/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/' |
wsgi.input | <flup.server.fcgi_base.InputStream object at 0x7f974b99d150> |
HTTP_USER_AGENT | 'claudebot' |
HTTP_HOST | 't-v.te.ua' |
wsgi.multithread | False |
REQUEST_URI | '/korysne/sho-robiti-yaksho-printer-perestav-drukuvati/' |
HTTP_ACCEPT | '*/*' |
wsgi.version | (1, 0) |
GATEWAY_INTERFACE | 'CGI/1.1' |
wsgi.run_once | False |
wsgi.errors | <flup.server.fcgi_base.TeeOutputStream object at 0x7f97428340d0> |
wsgi.multiprocess | True |
CONTENT_TYPE | '' |
CSRF_COOKIE | u'R2C8xNGIAo2GqSX2E3dcw7WQm0yjaiHo' |
tv.settings.production
Setting | Value |
---|---|
EMAIL_USE_TLS | True |
TINYMCE_JS_ROOT | '/media//tiny_mce' |
USE_THOUSAND_SEPARATOR | False |
CSRF_COOKIE_SECURE | False |
INLINE_MEDIA_CUSTOM_SIZES | {'inline_media.picture': {'large': 250, 'medium': 200, 'mini': 80, 'small': 150}, 'inline_media.pictureset': {'full': (380, 280), 'large': (228, 228), 'medium': (178, 178), 'mini': None, 'small': (128, 128)}} |
LANGUAGE_CODE | 'uk-ua' |
AVATAR_DEFAULT_SIZE | 80 |
MANAGERS | () |
AVATAR_CLEANUP_DELETED | False |
BASE_DIR | '/var/www/tv2/tv' |
SILENCED_SYSTEM_CHECKS | [] |
DEFAULT_CHARSET | 'utf-8' |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
STATIC_ROOT | '/var/www/tv2/tv/static' |
ALLOWED_HOSTS | ['127.0.0.1', 'localhost'] |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
SERVER_EMAIL | 'ternopil.vechirniy@gmail.com' |
SECURE_HSTS_SECONDS | 0 |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
SESSION_CACHE_ALIAS | 'default' |
AVATAR_RESIZE_METHOD | 1 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_NAME | 'sessionid' |
PAGINATION_DEFAULT_PAGINATION | 1 |
TWITTER_OAUTH_TOKEN_SECRET | u'********************' |
AVATAR_AUTO_GENERATE_SIZES | (80,) |
TIME_INPUT_FORMATS | ('%H:%M:%S', '%H:%M:%S.%f', '%H:%M') |
SECURE_REDIRECT_EXEMPT | [] |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.mysql', 'HOST': '127.0.0.1', 'NAME': 'tv', 'OPTIONS': {'init_command': 'SET default_storage_engine=INNODB'}, 'PASSWORD': u'********************', 'PORT': '3306', 'TEST': {'CHARSET': 'utf8', 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': 'Europe/Kiev', 'USER': 'tv'}} |
EMAIL_SSL_KEYFILE | u'********************' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ('django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler') |
DEFAULT_CONTENT_TYPE | 'text/html' |
APPEND_SLASH | True |
FIRST_DAY_OF_WEEK | 0 |
DATABASE_ROUTERS | [] |
DEFAULT_TABLESPACE | '' |
TINYMCE_PLUGINS | ['safari', 'table', 'advlink', 'advimage', 'iespell', 'inlinepopups', 'media', 'contextmenu', 'paste'] |
YEAR_MONTH_FORMAT | 'F Y' |
AVATAR_GRAVATAR_BACKUP | True |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', 'LOCATION': '/tmp/django_cache'}} |
SESSION_COOKIE_PATH | '/' |
AVATAR_HASH_FILENAMES | False |
ROOT_URLCONF | 'tv.urls' |
THUMBNAIL_DEBUG | True |
SECURE_CONTENT_TYPE_NOSNIFF | False |
MIDDLEWARE_CLASSES | ('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'pagination.middleware.PaginationMiddleware') |
USE_I18N | True |
THOUSAND_SEPARATOR | ',' |
SECRET_KEY | u'********************' |
LANGUAGE_COOKIE_NAME | 'django_language' |
PAGINATION_DEFAULT_WINDOW | 3 |
FILE_UPLOAD_TEMP_DIR | None |
AVATAR_CACHE_TIMEOUT | 3600 |
LOGGING_CONFIG | 'logging.config.dictConfig' |
TEMPLATE_LOADERS | ('django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader') |
INLINE_MEDIA_REMOVE_TAGS | ['</br>'] |
WSGI_APPLICATION | 'tv.wsgi.application' |
TEMPLATE_DEBUG | True |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
CSRF_COOKIE_NAME | 'csrftoken' |
FORCE_SCRIPT_NAME | None |
USE_X_FORWARDED_HOST | False |
AVATAR_GRAVATAR_BASE_URL | 'https://www.gravatar.com/avatar/' |
EMAIL_TIMEOUT | 10 |
SECURE_SSL_HOST | None |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SESSION_COOKIE_SECURE | False |
TINYMCE_SPELLCHECKER | False |
SECURE_BROWSER_XSS_FILTER | False |
CSRF_COOKIE_DOMAIN | None |
FILE_CHARSET | 'utf-8' |
DEBUG | True |
COMMENTS_APP | 'threadedcomments' |
LANGUAGE_COOKIE_DOMAIN | None |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
INSTALLED_APPS | ('django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.flatpages', 'avatar', 'sorl.thumbnail', 'pagination', 'tagging', 'tinymce', 'tv.common', 'tv.apps.blog', 'tv.apps.photos', 'tv.apps.downloads', 'tv.apps.kvideos', 'tv.apps.poll', 'tv.apps.climate_change', 'tv.apps.ogo', 'tv.apps.inlines') |
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'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian 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'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hu', 'Hungarian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('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 Bokmal'), ('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-cn', 'Simplified Chinese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese'), ('zh-tw', 'Traditional Chinese')) |
USE_L10N | True |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
STATICFILES_DIRS | () |
PREPEND_WWW | False |
SECURE_PROXY_SSL_HEADER | None |
LANGUAGE_COOKIE_AGE | None |
SESSION_COOKIE_HTTPONLY | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
INTERNAL_IPS | () |
MONTH_DAY_FORMAT | 'F j' |
LOGIN_URL | '/accounts/login/' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
TINYMCE_JS_URL | '/media/tiny_mce/tiny_mce.js' |
TIME_FORMAT | 'P' |
AUTH_USER_MODEL | 'auth.User' |
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') |
AUTHENTICATION_BACKENDS | ('django.contrib.auth.backends.ModelBackend',) |
EMAIL_HOST_PASSWORD | u'********************' |
PASSWORD_RESET_TIMEOUT_DAYS | u'********************' |
SESSION_FILE_PATH | None |
CACHE_MIDDLEWARE_ALIAS | 'default' |
SESSION_SAVE_EVERY_REQUEST | False |
NUMBER_GROUPING | 0 |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
INLINE_MEDIA_DEBUG | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_COOKIE_PATH | '/' |
TWITTER_OAUTH_TOKEN | u'********************' |
LOGIN_REDIRECT_URL | '/' |
AVATAR_ALLOWED_FILE_EXTS | None |
DECIMAL_SEPARATOR | '.' |
IGNORABLE_404_URLS | () |
LOCALE_PATHS | () |
TEMPLATE_STRING_IF_INVALID | '' |
LOGOUT_URL | '/accounts/logout/' |
AVATAR_HASH_USERDIRNAMES | False |
FIXTURE_DIRS | () |
EMAIL_HOST | 'smtp.gmail.com' |
DATE_FORMAT | 'N j, Y' |
PAGINATION_DEFAULT_ORPHANS | 0 |
MEDIA_ROOT | '/var/www/tv/tv/media' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
ADMINS | (('Svyatoslav Zhurovskyy', 'svyatoslav.zhurovsky@gmail.com'),) |
AVATAR_THUMB_FORMAT | 'JPEG' |
FORMAT_MODULE_PATH | None |
DEFAULT_FROM_EMAIL | 'ternopil.vechirniy@gmail.com' |
AVATAR_STORAGE_DIR | 'avatars' |
AVATAR_GRAVATAR_DEFAULT | None |
MEDIA_URL | '/media/' |
DATETIME_FORMAT | 'N j, Y, P' |
TEMPLATE_DIRS | ('/var/www/tv2/tv/templates',) |
AVATAR_MAX_AVATARS_PER_USER | 42 |
AVATAR_DEFAULT_URL | 'avatar/img/default.jpg' |
SITE_ID | 1 |
DISALLOWED_USER_AGENTS | () |
ALLOWED_INCLUDE_ROOTS | () |
LOGGING | {'root': {'level': 'DEBUG'}, 'version': 1} |
TWITTER_APP_SECRET | u'********************' |
SHORT_DATE_FORMAT | 'm/d/Y' |
TEMPLATES | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
CACHE_MIDDLEWARE_KEY_PREFIX | u'********************' |
SECURE_SSL_REDIRECT | False |
TIME_ZONE | 'Europe/Kiev' |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
AVATAR_STORAGE | 'django.core.files.storage.FileSystemStorage' |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
CSRF_COOKIE_HTTPONLY | False |
EMAIL_USE_SSL | False |
TEMPLATE_CONTEXT_PROCESSORS | ('django.contrib.auth.context_processors.auth', 'django.core.context_processors.i18n', 'django.core.context_processors.request', 'django.core.context_processors.static') |
MIGRATION_MODULES | {} |
SITE_NAME | u'\u0422\u0435\u0440\u043d\u043e\u043f\u0456\u043b\u044c \u0432\u0435\u0447\u0456\u0440\u043d\u0456\u0439' |
SESSION_COOKIE_AGE | 1209600 |
SETTINGS_MODULE | 'tv.settings.production' |
USE_ETAGS | False |
TWITTER_APP_KEY | u'********************' |
AVATAR_MAX_SIZE | 1048576 |
LANGUAGES_BIDI | ('he', 'ar', 'fa', 'ur') |
DEFAULT_INDEX_TABLESPACE | '' |
CSRF_COOKIE_AGE | 31449600 |
STATIC_URL | '/static/' |
EMAIL_PORT | 587 |
USE_TZ | False |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
TEST_NON_SERIALIZED_APPS | [] |
PASSWORD_HASHERS | u'********************' |
TINYMCE_DEFAULT_CONFIG | {'cleanup': False, 'cleanup_on_startup': False, 'convert_newlines_to_brs': False, 'extended_valid_elements': 'inline[type|id]', 'external_image_list_url': 'lists/image_list.js', 'external_link_list_url': 'lists/link_list.js', 'force_br_newlines': True, 'force_p_newlines': True, 'forced_root_block': False, 'formats': {'aligncenter': {'classes': 'align-center', 'selector': 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img'}, 'alignfull': {'classes': 'align-justify', 'selector': 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img'}, 'alignleft': {'classes': 'align-left', 'selector': 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img'}, 'alignright': {'classes': 'align-right', 'selector': 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img'}, 'bold': {'inline': 'strong'}, 'italic': {'inline': 'em'}, 'strikethrough': {'inline': 'del'}, 'underline': {'inline': 'u'}}, 'inline_styles': False, 'language': 'uk', 'media_external_list_url': 'lists/media_list.js', 'pagebreak_separator': '', 'paste_auto_cleanup_on_paste': True, 'paste_block_drop': False, 'paste_remove_spans': True, 'paste_remove_stylus': True, 'paste_remove_stylus_if_webkit': True, 'paste_retain_style_properties': '', 'paste_strip_class_attributes': 'all', 'plugins': 'safari,table,advlink,advimage,iespell,inlinepopups,media,contextmenu,paste', 'relative_urls': False, 'remove_linebreaks': False, 'table_default_cellpadding': 2, 'table_default_cellspacing': 2, 'template_external_list_url': 'lists/template_list.js', 'theme': 'advanced', 'theme_advanced_buttons1': 'bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontsizeselect,|,spellchecker', 'theme_advanced_buttons2': 'bullist,numlist,|,outdent,indent,blockquote,|,link,unlink,image,cleanup,code,|,forecolor,backcolor,|,insertfile,insertimage, |, charmap,emotions,iespell,media,advhr,|,', 'theme_advanced_buttons3': 'tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,pastetext,pasteword,selectall,pastetext', 'theme_advanced_resizing': True, 'theme_advanced_statusbar_location': 'bottom', 'theme_advanced_toolbar_align': 'left', 'theme_advanced_toolbar_location': 'top'} |
ABSOLUTE_URL_OVERRIDES | {} |
LANGUAGE_COOKIE_PATH | '/' |
CACHE_MIDDLEWARE_SECONDS | 600 |
EMAIL_SSL_CERTFILE | None |
FEED_SIZE | 10 |
AVATAR_THUMB_QUALITY | 85 |
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') |
EMAIL_HOST_USER | 'ternopil.vechirniy' |
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.