cannot write mode RGBA as JPEG
Request Method: | GET |
---|---|
Request URL: | http://t-v.te.ua/korysne/?page=109 |
Django Version: | 1.8.6 |
Exception Type: | IOError |
Exception Value: | cannot write mode RGBA as JPEG |
Exception Location: | /home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/PIL/JpegImagePlugin.py in _save, line 623 |
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 22:00:41 +0200 |
In template /var/www/tv2/tv/apps/blog/templates/blog_elements/thumbnail_style_list.html
, error at line 6
1 | {% load thumbnail %} |
---|---|
2 | |
3 | <div class="post-{{ news.pk }} post type-post status-publish format-standard has-post-thumbnail hentry entry list_style clearfix"> |
4 | <div class="entry_thumb"> |
5 | <a title="{{ news.title }}" href="{{ news.get_absolute_url }}"> |
6 | {% thumbnail news.title_image.original "214x174" crop="80% top" as im %} |
7 | <img width="{{ im.width }}" |
8 | height="{{ im.height }}" |
9 | alt="{{ news.title_image.title }}" |
10 | src="{{ im.url }}" /> |
11 | {% endthumbnail %} |
12 | </a> |
13 | </div> |
14 | |
15 | <div class="entry_right "> |
16 | <h2 class="entry_title"><a title="{{ news.title }}" rel="bookmark" href="{{ news.get_absolute_url }}">{{ news.title }}</a></h2> |
/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 | IOError('cannot write mode RGBA as JPEG',) |
callback_args | () |
resolver_match | ResolverMatch(func=tv.common.views.wrapper, args=(), kwargs={'slug': u'korysne'}, url_name=news_category, app_name=None, namespaces=[]) |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f974c9a2ed0>> |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f974efe3b10> |
request | "<WSGIRequest\npath:/korysne/,\nGET:<QueryDict: {u'page': [u'109']}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{},\nMETA:{'CONTENT_LENGTH': '',\n 'CONTENT_TYPE': '',\n u'CSRF_COOKIE': u'rptexgReoqWJqwFj9jWfIYtnmix6odlG',\n 'DOCUMENT_ROOT': '/var/www/tv/tv',\n 'DOCUMENT_URI': '/korysne/',\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/',\n 'QUERY_STRING': 'page=109',\n 'REMOTE_ADDR': '3.227.252.87',\n 'REMOTE_USER': '',\n 'REQUEST_METHOD': 'GET',\n 'REQUEST_URI': '/korysne/?page=109',\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 0x7f97427f7b90>,\n 'wsgi.input': <flup.server.fcgi_base.InputStream object at 0x7f97427f7ed0>,\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 0x7f974c8c5b50> |
wrapped_callback | <function wrapper at 0x7f974c8c5b50> |
resolver | <RegexURLResolver 'tv.urls' (None:None) ^/> |
callback_kwargs | {'slug': u'korysne'} |
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/,\nGET:<QueryDict: {u'page': [u'109']}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{},\nMETA:{'CONTENT_LENGTH': '',\n 'CONTENT_TYPE': '',\n u'CSRF_COOKIE': u'rptexgReoqWJqwFj9jWfIYtnmix6odlG',\n 'DOCUMENT_ROOT': '/var/www/tv/tv',\n 'DOCUMENT_URI': '/korysne/',\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/',\n 'QUERY_STRING': 'page=109',\n 'REMOTE_ADDR': '3.227.252.87',\n 'REMOTE_USER': '',\n 'REQUEST_METHOD': 'GET',\n 'REQUEST_URI': '/korysne/?page=109',\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 0x7f97427f7b90>,\n 'wsgi.input': <flup.server.fcgi_base.InputStream object at 0x7f97427f7ed0>,\n 'wsgi.multiprocess': True,\n 'wsgi.multithread': False,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'http',\n 'wsgi.version': (1, 0)}>" |
kw | {'slug': u'korysne'} |
func | <function news_category_list at 0x7f974c8c5ad0> |
output | ({'category': <Category: Здоров'я>, 'news': [<Post: У Тернопільській лікарні помер тернополянин із COVID-19>, <Post: 13 травня 7 підтверджень: 1028 осіб інфіковано COVID-19 в Тернопільській області>, <Post: На Тернопільщині за добу +16 інфікованих COVID-19. Двоє людей померли >, <Post: 159 людей з COVID-19 на Тернопільщині одужали>, <Post: Нові можливості карантину: де пацієнту отримати допомогу в онлайні?>, <Post: Ситуація в Україні дозволяє почати вихід з карантину – МОЗ>, <Post: 14 нових випадків коронавірусу за добу в Тернопільській області>, <Post: Сьогодні у районі на Тернопільщині розпочався поступовий вихід з карантину>, <Post: У Збаражі обрали нового директора центральної лікарні>, <Post: «Заразила родину — і це за 2 тисячі в місяць» — лікарка з Тернопільщини із коронавірусом про лікування, мотивацію і постійний ризик>, <Post: Ситуація керована, – у Монастириськах розглядають варіанти щодо послаблення карантинних заходів>, <Post: 4 інфікованих священника із Почаївської лаври лікуються у Києві, чому саме в столиці — невідомо>, <Post: На Тернопільщині зростає число інфікованих коронавірусом — підтверджено 435 випадків COVID-19>, <Post: 21 квітня: в Україні кількість хворих на COVID-19 перевалила за 6 тисяч, за добу – 415 нових>, <Post: Чи потрібно платити за тест на коронавірус. Розповів очільник МОЗ>, <Post: 17 квітня — у Тернопільській області вже 353 хворих на коронавірус: +20 нових випадків>, <Post: 16 квітня 46 підтверджень: 333 хворих на коронавірус у Тернопільській області>, <Post: Безкоштовна консультація лікаря онлайн. Катерина Яцук надає кваліфіковані рекомендації>, <Post: 7 квітня жодного нового підтвердження. 168 хворих на коронавірус у Тернопільській області>, <Post: Чи справляються із навантаженням державні стоматологи в Тернополі і як у них із захистом?>, '...(remaining elements truncated)...'], 'request': <WSGIRequest: GET '/korysne/?page=109'>}, 'blog_pages/news_categories.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_categories.html' |
context_instance | [{'False': False, 'None': None, 'True': True}, {}, {}] |
context | {'category': <Category: Здоров'я>, 'news': [<Post: У Тернопільській лікарні помер тернополянин із COVID-19>, <Post: 13 травня 7 підтверджень: 1028 осіб інфіковано COVID-19 в Тернопільській області>, <Post: На Тернопільщині за добу +16 інфікованих COVID-19. Двоє людей померли >, <Post: 159 людей з COVID-19 на Тернопільщині одужали>, <Post: Нові можливості карантину: де пацієнту отримати допомогу в онлайні?>, <Post: Ситуація в Україні дозволяє почати вихід з карантину – МОЗ>, <Post: 14 нових випадків коронавірусу за добу в Тернопільській області>, <Post: Сьогодні у районі на Тернопільщині розпочався поступовий вихід з карантину>, <Post: У Збаражі обрали нового директора центральної лікарні>, <Post: «Заразила родину — і це за 2 тисячі в місяць» — лікарка з Тернопільщини із коронавірусом про лікування, мотивацію і постійний ризик>, <Post: Ситуація керована, – у Монастириськах розглядають варіанти щодо послаблення карантинних заходів>, <Post: 4 інфікованих священника із Почаївської лаври лікуються у Києві, чому саме в столиці — невідомо>, <Post: На Тернопільщині зростає число інфікованих коронавірусом — підтверджено 435 випадків COVID-19>, <Post: 21 квітня: в Україні кількість хворих на COVID-19 перевалила за 6 тисяч, за добу – 415 нових>, <Post: Чи потрібно платити за тест на коронавірус. Розповів очільник МОЗ>, <Post: 17 квітня — у Тернопільській області вже 353 хворих на коронавірус: +20 нових випадків>, <Post: 16 квітня 46 підтверджень: 333 хворих на коронавірус у Тернопільській області>, <Post: Безкоштовна консультація лікаря онлайн. Катерина Яцук надає кваліфіковані рекомендації>, <Post: 7 квітня жодного нового підтвердження. 168 хворих на коронавірус у Тернопільській області>, <Post: Чи справляються із навантаженням державні стоматологи в Тернополі і як у них із захистом?>, '...(remaining elements truncated)...'], 'request': <WSGIRequest: GET '/korysne/?page=109'>} |
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 0x7f974c8cd4d0> |
dirs | <object object at 0x7f974eb3fef0> |
dictionary | <object object at 0x7f974eb3fee0> |
template_name | 'blog_pages/news_categories.html' |
request | None |
context_instance | [{'False': False, 'None': None, 'True': True}, {}, {}] |
context | {'category': <Category: Здоров'я>, 'news': [<Post: У Тернопільській лікарні помер тернополянин із COVID-19>, <Post: 13 травня 7 підтверджень: 1028 осіб інфіковано COVID-19 в Тернопільській області>, <Post: На Тернопільщині за добу +16 інфікованих COVID-19. Двоє людей померли >, <Post: 159 людей з COVID-19 на Тернопільщині одужали>, <Post: Нові можливості карантину: де пацієнту отримати допомогу в онлайні?>, <Post: Ситуація в Україні дозволяє почати вихід з карантину – МОЗ>, <Post: 14 нових випадків коронавірусу за добу в Тернопільській області>, <Post: Сьогодні у районі на Тернопільщині розпочався поступовий вихід з карантину>, <Post: У Збаражі обрали нового директора центральної лікарні>, <Post: «Заразила родину — і це за 2 тисячі в місяць» — лікарка з Тернопільщини із коронавірусом про лікування, мотивацію і постійний ризик>, <Post: Ситуація керована, – у Монастириськах розглядають варіанти щодо послаблення карантинних заходів>, <Post: 4 інфікованих священника із Почаївської лаври лікуються у Києві, чому саме в столиці — невідомо>, <Post: На Тернопільщині зростає число інфікованих коронавірусом — підтверджено 435 випадків COVID-19>, <Post: 21 квітня: в Україні кількість хворих на COVID-19 перевалила за 6 тисяч, за добу – 415 нових>, <Post: Чи потрібно платити за тест на коронавірус. Розповів очільник МОЗ>, <Post: 17 квітня — у Тернопільській області вже 353 хворих на коронавірус: +20 нових випадків>, <Post: 16 квітня 46 підтверджень: 333 хворих на коронавірус у Тернопільській області>, <Post: Безкоштовна консультація лікаря онлайн. Катерина Яцук надає кваліфіковані рекомендації>, <Post: 7 квітня жодного нового підтвердження. 168 хворих на коронавірус у Тернопільській області>, <Post: Чи справляються із навантаженням державні стоматологи в Тернополі і як у них із захистом?>, '...(remaining elements truncated)...'], 'request': <WSGIRequest: GET '/korysne/?page=109'>} |
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_categories.html' |
self | <django.template.engine.Engine object at 0x7f974c8cd390> |
t | <django.template.base.Template object at 0x7f97427f7f10> |
context | {'category': <Category: Здоров'я>, 'news': [<Post: У Тернопільській лікарні помер тернополянин із COVID-19>, <Post: 13 травня 7 підтверджень: 1028 осіб інфіковано COVID-19 в Тернопільській області>, <Post: На Тернопільщині за добу +16 інфікованих COVID-19. Двоє людей померли >, <Post: 159 людей з COVID-19 на Тернопільщині одужали>, <Post: Нові можливості карантину: де пацієнту отримати допомогу в онлайні?>, <Post: Ситуація в Україні дозволяє почати вихід з карантину – МОЗ>, <Post: 14 нових випадків коронавірусу за добу в Тернопільській області>, <Post: Сьогодні у районі на Тернопільщині розпочався поступовий вихід з карантину>, <Post: У Збаражі обрали нового директора центральної лікарні>, <Post: «Заразила родину — і це за 2 тисячі в місяць» — лікарка з Тернопільщини із коронавірусом про лікування, мотивацію і постійний ризик>, <Post: Ситуація керована, – у Монастириськах розглядають варіанти щодо послаблення карантинних заходів>, <Post: 4 інфікованих священника із Почаївської лаври лікуються у Києві, чому саме в столиці — невідомо>, <Post: На Тернопільщині зростає число інфікованих коронавірусом — підтверджено 435 випадків COVID-19>, <Post: 21 квітня: в Україні кількість хворих на COVID-19 перевалила за 6 тисяч, за добу – 415 нових>, <Post: Чи потрібно платити за тест на коронавірус. Розповів очільник МОЗ>, <Post: 17 квітня — у Тернопільській області вже 353 хворих на коронавірус: +20 нових випадків>, <Post: 16 квітня 46 підтверджень: 333 хворих на коронавірус у Тернопільській області>, <Post: Безкоштовна консультація лікаря онлайн. Катерина Яцук надає кваліфіковані рекомендації>, <Post: 7 квітня жодного нового підтвердження. 168 хворих на коронавірус у Тернопільській області>, <Post: Чи справляються із навантаженням державні стоматологи в Тернополі і як у них із захистом?>, '...(remaining elements truncated)...'], 'request': <WSGIRequest: GET '/korysne/?page=109'>} |
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 0x7f97427f7f10> |
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 0x7f97427f7f10> |
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 | IOError('cannot write mode RGBA as JPEG',) |
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 0x7f97427f7a10> |
compiled_parent | <django.template.base.Template object at 0x7f974397bc90> |
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 0x7f974397bc90> |
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 | IOError('cannot write mode RGBA as JPEG',) |
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 0x7f97427f7a10> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
compiled_parent | <django.template.base.Template object at 0x7f9743949650> |
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 0x7f9743949650> |
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: page_content. Contents: []> |
bit | u'\n\n <div class="primary">\n <div class="wrap clearfix">\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'\u0417\u0434\u043e\u0440\u043e\u0432'\u044f', 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=UFIO2A5H" />\n\n\n\n\n<link rel=\'stylesheet\' id=\'walk-shortcodes-css\' href=\'/media/v2/css/walk-shortcodes.css?rand=YFP72NHE\' type=\'text/css\' media=\'all\'/>\n<link rel=\'stylesheet\' id=\'contact-form-7-css\' href=\'/media/v2/css/styles.css?rand=VZ0WSCB6\' 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=YKXAO0HF\' type=\'text/css\' media=\'all\'/>\n<link href=\'/media/v2/css/tags.css?rand=W4HSP6VX\' 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=XVDZBGJT\' type=\'text/css\' media=\'all\' />\n<![endif]-->\n<link rel=\'stylesheet\' id=\'walk-responsive-css\' href=\'/media/v2/css/responsive.css?rand=5JP8TKL9\' type=\'text/css\' media=\'all\'/>\n<link rel=\'stylesheet\' id=\'prettyphoto-css\' href=\'/media/v2/css/prettyPhoto.css?rand=7LIAW5GP\' type=\'text/css\' media=\'all\'/>\n<link rel=\'stylesheet\' id=\'walk-user-css\' href=\'/media/v2/css/user.css?rand=2G9INP4H\' type=\'text/css\' media=\'all\'/>\n\n<!-- <script type=\'text/javascript\' src=\'/media/v2/js/jquery.js?rand=XSR0HE3V\'></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=U132C9EO\'></script>\n<script type=\'text/javascript\' src=\'/media/v2/js/jquery.cookie.js?rand=ELM7V3NW\'></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 ', u'\n \n', u'\n </head>\n\n <body class="home page page-template page-template-page_full-php custom-font-enabled is-stretched">\n ', u'\n \n', u'\n <div id="page" class="hfeed site clearfix">\n ', u'<div class="callout_bar">\n <div class="wrap clearfix">\n <div class="cb_left">\n <a href="/ogo/">\u041e\u0433\u043e\u043b\u043e\u0448\u0435\u043d\u043d\u044f</a> |\n <a href="/photos/" title="\u0424\u043e\u0442\u043e">\u0424\u043e\u0442\u043e<... <trimmed 11665 bytes string> |
self | [<Text Node: '<!DOCTYPE html> <!--[if I'>, <Block Node: title. Contents: []>, <Text Node: ' | ????????? ????????</ti'>, <django.template.loader_tags.IncludeNode object at 0x7f9743a99650>, <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 0x7f9743a993d0>, <Text Node: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f9743a99e10>, <Text Node: ' <div class="'>, <Block Node: active_menu_homepage. Contents: []>, <Text Node: '"> '>, <django.template.defaulttags.URLNode object at 0x7f9743a99a90>, <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 0x7f9743a99490>, <Text Node: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f97427fb310>, <Text Node: ' </div> '>, <django.template.loader_tags.IncludeNode object at 0x7f97427fb050>, <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: page_content. Contents: []> |
self | [<Text Node: '<!DOCTYPE html> <!--[if I'>, <Block Node: title. Contents: []>, <Text Node: ' | ????????? ????????</ti'>, <django.template.loader_tags.IncludeNode object at 0x7f9743a99650>, <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 0x7f9743a993d0>, <Text Node: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f9743a99e10>, <Text Node: ' <div class="'>, <Block Node: active_menu_homepage. Contents: []>, <Text Node: '"> '>, <django.template.defaulttags.URLNode object at 0x7f9743a99a90>, <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 0x7f9743a99490>, <Text Node: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f97427fb310>, <Text Node: ' </div> '>, <django.template.loader_tags.IncludeNode object at 0x7f97427fb050>, <Text Node: ' </div> <'>, <Block Node: bottom_js. Contents: []>, <Text Node: ' </body> </html>'>] |
e | IOError('cannot write mode RGBA as JPEG',) |
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: page_content. Contents: [<Text Node: ' <div class="content '>, <Block Node: page_content_primary. Contents: []>, <Text Node: ' </div> <!-- .con'>, <Block Node: page_content_sidebar. Contents: []>, <Text Node: ' </div> <!-- #sid'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f97427f7a10> |
block | <Block Node: page_content. Contents: [<Text Node: ' <div class="content '>, <Block Node: page_content_primary. Contents: []>, <Text Node: ' </div> <!-- .con'>, <Block Node: page_content_sidebar. Contents: []>, <Text Node: ' </div> <!-- #sid'>]> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
self | <Block Node: page_content. 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: page_content_primary. Contents: []> |
bit | u'\n <div class="content ">\n ' |
bits | [u'\n <div class="content ">\n '] |
self | [<Text Node: ' <div class="content '>, <Block Node: page_content_primary. Contents: []>, <Text Node: ' </div> <!-- .con'>, <Block Node: page_content_sidebar. Contents: []>, <Text Node: ' </div> <!-- #sid'>] |
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: page_content_primary. Contents: []> |
self | [<Text Node: ' <div class="content '>, <Block Node: page_content_primary. Contents: []>, <Text Node: ' </div> <!-- .con'>, <Block Node: page_content_sidebar. Contents: []>, <Text Node: ' </div> <!-- #sid'>] |
e | IOError('cannot write mode RGBA as JPEG',) |
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: page_content_primary. Contents: [<Text Node: ' '>, <django.template.defaulttags.LoadNode object at 0x7f974b98dfd0>, <Text Node: ' '>, <pagination.templatetags.pagination_tags.AutoPaginateNode object at 0x7f974b98dad0>, <Text Node: ' <div class="page_tit'>, <Variable Node: category.title>, <Text Node: '</h2> <div class='>, <django.template.defaulttags.URLNode object at 0x7f974b98dd90>, <Text Node: '">???????</a> / '>, <Variable Node: category.title>, <Text Node: '</span> </div> '>, <For Node: for news in news, tail_len: 3>, <Text Node: ' '>, <django.template.base.InclusionNode object at 0x7f974b98dc10>, <Text Node: ' <div id="rt-n-1026"'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f97427f7a10> |
block | <Block Node: page_content_primary. Contents: [<Text Node: ' '>, <django.template.defaulttags.LoadNode object at 0x7f974b98dfd0>, <Text Node: ' '>, <pagination.templatetags.pagination_tags.AutoPaginateNode object at 0x7f974b98dad0>, <Text Node: ' <div class="page_tit'>, <Variable Node: category.title>, <Text Node: '</h2> <div class='>, <django.template.defaulttags.URLNode object at 0x7f974b98dd90>, <Text Node: '">???????</a> / '>, <Variable Node: category.title>, <Text Node: '</span> </div> '>, <For Node: for news in news, tail_len: 3>, <Text Node: ' '>, <django.template.base.InclusionNode object at 0x7f974b98dc10>, <Text Node: ' <div id="rt-n-1026"'>]> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
self | <Block Node: page_content_primary. 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 | <For Node: for news in news, tail_len: 3> |
bit | u'</span>\n </div>\n </div>\n\n ' |
bits | [u'\n ', u'', u'\n ', u'', u'\n <div class="page_titles">\n <h2>', u'\u0417\u0434\u043e\u0440\u043e\u0432'\u044f', u'</h2>\n <div class="breadcrumbs">\n <a title="\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u0433\u043e\u043b\u043e\u0432\u043d\u0443 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0443" href="', u'/', u'">\u0413\u043e\u043b\u043e\u0432\u043d\u0430</a> /\n <span class="current">', u'\u0417\u0434\u043e\u0440\u043e\u0432'\u044f', u'</span>\n </div>\n </div>\n\n '] |
self | [<Text Node: ' '>, <django.template.defaulttags.LoadNode object at 0x7f974b98dfd0>, <Text Node: ' '>, <pagination.templatetags.pagination_tags.AutoPaginateNode object at 0x7f974b98dad0>, <Text Node: ' <div class="page_tit'>, <Variable Node: category.title>, <Text Node: '</h2> <div class='>, <django.template.defaulttags.URLNode object at 0x7f974b98dd90>, <Text Node: '">???????</a> / '>, <Variable Node: category.title>, <Text Node: '</span> </div> '>, <For Node: for news in news, tail_len: 3>, <Text Node: ' '>, <django.template.base.InclusionNode object at 0x7f974b98dc10>, <Text Node: ' <div id="rt-n-1026"'>] |
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 | <For Node: for news in news, tail_len: 3> |
self | [<Text Node: ' '>, <django.template.defaulttags.LoadNode object at 0x7f974b98dfd0>, <Text Node: ' '>, <pagination.templatetags.pagination_tags.AutoPaginateNode object at 0x7f974b98dad0>, <Text Node: ' <div class="page_tit'>, <Variable Node: category.title>, <Text Node: '</h2> <div class='>, <django.template.defaulttags.URLNode object at 0x7f974b98dd90>, <Text Node: '">???????</a> / '>, <Variable Node: category.title>, <Text Node: '</span> </div> '>, <For Node: for news in news, tail_len: 3>, <Text Node: ' '>, <django.template.base.InclusionNode object at 0x7f974b98dc10>, <Text Node: ' <div id="rt-n-1026"'>] |
e | IOError('cannot write mode RGBA as JPEG',) |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/defaulttags.py
in render
else:
context[self.loopvars[0]] = item
# In debug mode provide the source of the node which raised
# the exception
if context.template.engine.debug:
for node in self.nodelist_loop:
try:
nodelist.append(node.render(context))...
except Exception as e:
if not hasattr(e, 'django_template_source'):
e.django_template_source = node.source
raise
else:
for node in self.nodelist_loop:
Variable | Value |
---|---|
node | <django.template.loader_tags.IncludeNode object at 0x7f974397b8d0> |
len_values | 6 |
pop_context | False |
e | IOError('cannot write mode RGBA as JPEG',) |
item | <Post: 21-22 липня в Україні штормове попередження> |
loop_dict | {u'counter': 5, u'counter0': 4, u'first': False, u'last': False, u'parentloop': {}, u'revcounter': 2, u'revcounter0': 1} |
self | <For Node: for news in news, tail_len: 3> |
parentloop | {} |
i | 4 |
values | [<Post: Проблем з парковкою у День незалежності та День міста не буде>, <Post: Тернопіль стане веломістом>, <Post: У парках Тернополя запрацював безкоштовний Wi-Fi>, <Post: Визначні дати тижня>, <Post: 21-22 липня в Україні штормове попередження>, <Post: В Тернополі можна безкоштовно протестуватися на гепатит С>] |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
num_loopvars | 1 |
nodelist | [u'\n ', u'\n\n<div class="post-980 post type-post status-publish format-standard has-post-thumbnail hentry entry list_style clearfix">\n <div class="entry_thumb">\n <a title="\u041f\u0440\u043e\u0431\u043b\u0435\u043c \u0437 \u043f\u0430\u0440\u043a\u043e\u0432\u043a\u043e\u044e \u0443 \u0414\u0435\u043d\u044c \u043d\u0435\u0437\u0430\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0456 \u0442\u0430 \u0414\u0435\u043d\u044c \u043c\u0456\u0441\u0442\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435" href="/korysne/problem-z-parkovkoyu-u-den-nezalezhnosti-ta-den-mista-ne-bude/">\n \n <img width="214"\n height="174"\n alt="\u043f\u0430\u0440\u043a\u043e\u0432\u043a\u0430 \u0434\u043e \u0434\u043d\u044f \u043d\u0435\u0437\u0430\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0456"\n src="/media/cache/40/4e/404e48ad1ceb1b60be776ebdadbfce3d.jpg" />\n \n </a>\n </div>\n\n <div class="entry_right ">\n <h2 class="entry_title"><a title="\u041f\u0440\u043e\u0431\u043b\u0435\u043c \u0437 \u043f\u0430\u0440\u043a\u043e\u0432\u043a\u043e\u044e \u0443 \u0414\u0435\u043d\u044c \u043d\u0435\u0437\u0430\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0456 \u0442\u0430 \u0414\u0435\u043d\u044c \u043c\u0456\u0441\u0442\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435" rel="bookmark" href="/korysne/problem-z-parkovkoyu-u-den-nezalezhnosti-ta-den-mista-ne-bude/">\u041f\u0440\u043e\u0431\u043b\u0435\u043c \u0437 \u043f\u0430\u0440\u043a\u043e\u0432\u043a\u043e\u044e \u0443 \u0414\u0435\u043d\u044c \u043d\u0435\u0437\u0430\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0456 \u0442\u0430 \u0414\u0435\u043d\u044c \u043c\u0456\u0441\u0442\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435</a></h2>\n\n <div class="meta_row">\n <span>10 \u0421\u0435\u0440 2012 / 09:55</span>\n \n \n\n \n </div>\n\n <p>\u0417 \u043c\u0435\u0442\u043e\u044e \u043d\u0430\u043b\u0435\u0436\u043d\u043e\u0433\u043e \u0437\u0430\u0431\u0435\u0437\u043f\u0435\u0447\u0435\u043d\u043d\u044f \u0441\u0432\u044f\u0442\u043a\u0443\u0432\u0430\u043d\u043d\u044f \u0414\u043d\u044f \u041d\u0435\u0437\u0430\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u0456, \u0414\u043d\u044f \u043c\u0456\u0441\u0442\u0430 \u0442\u0430 \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u043d\u044f \u0447\u0435\u043c\u043f\u0456\u043e\u043d\u0430\u0442\u0443 \u0441\u0432\u0456\u0442\u0443 \u0437 \u0432\u043e\u0434\u043e-\u043c\u043e\u0442\u043e\u0440\u043d\u043e\u0433\u043e \u0441\u043f\u043e\u0440\u0442\u0443 \u0443\u043f\u0440\u0430\u0432\u043b\u0456\u043d\u043d\u044f \u0416\u041a\u0413, \u0431\u043b\u0430\u0433\u043e\u0443\u0441\u0442\u0440\u043e\u044e \u0442\u0430 ...</p>\n <p><a href="/korysne/problem-z-parkovkoyu-u-den-nezalezhnosti-ta-den-mista-ne-bude/" class="more-link btn">\u0427\u0438\u0442\u0430\u0442\u0438 \u0431\u0456\u043b\u044c\u0448\u0435 \u2192</a></p>\n </div>\n <!-- .entry_right -->\n</div>\n<!-- .entry -->\n', u'\n ', u'\n ', u'\n\n<div class="post-973 post type-post status-publish format-standard has-post-thumbnail hentry entry list_style clearfix">\n <div class="entry_thumb">\n <a title="\u0422\u0435\u0440\u043d\u043e\u043f\u0456\u043b\u044c \u0441\u0442\u0430\u043d\u0435 \u0432\u0435\u043b\u043e\u043c\u0456\u0441\u0442\u043e\u043c" href="/korysne/ternopil-stane-velomistom/">\n \n <img width="214"\n height="174"\n alt="\u0432\u0435\u043b\u043e\u043c\u0456\u0441\u0442\u043e"\n src="/media/cache/b1/ef/b1ef91f9970a97d3c488029ebb3cb447.jpg" />\n \n </a>\n </div>\n\n <div class="entry_right ">\n <h2 class="entry_title"><a title="\u0422\u0435\u0440\u043d\u043e\u043f\u0456\u043b\u044c \u0441\u0442\u0430\u043d\u0435 \u0432\u0435\u043b\u043e\u043c\u0456\u0441\u0442\u043e\u043c" rel="bookmark" href="/korysne/ternopil-stane-velomistom/">\u0422\u0435\u... <trimmed 10384 bytes string> |
unpack | False |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/loader_tags.py
in render
values = {
name: var.resolve(context)
for name, var in six.iteritems(self.extra_context)
}
if self.isolated_context:
return template.render(context.new(values))
with context.push(**values):
return template.render(context)...
except Exception:
if context.template.engine.debug:
raise
return ''
Variable | Value |
---|---|
self | <django.template.loader_tags.IncludeNode object at 0x7f974397b8d0> |
values | {} |
template | <django.template.base.Template object at 0x7f974c4ed790> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/django/template/base.py
in render
"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()
class Token(object):
def __init__(self, token_type, contents):
Variable | Value |
---|---|
self | <django.template.base.Template object at 0x7f974c4ed790> |
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 0x7f974c4ed790> |
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 | <ThumbnailNode> |
bit | u'">\n ' |
bits | [u'', u'\n\n<div class="post-', u'918', u' post type-post status-publish format-standard has-post-thumbnail hentry entry list_style clearfix">\n <div class="entry_thumb">\n <a title="', u'21-22 \u043b\u0438\u043f\u043d\u044f \u0432 \u0423\u043a\u0440\u0430\u0457\u043d\u0456 \u0448\u0442\u043e\u0440\u043c\u043e\u0432\u0435 \u043f\u043e\u043f\u0435\u0440\u0435\u0434\u0436\u0435\u043d\u043d\u044f', u'" href="', u'/korysne/21-22-lipnya-v-ukrayini-shtormove-poperedzhennya/', u'">\n '] |
self | [<django.template.defaulttags.LoadNode object at 0x7f97427d7350>, <Text Node: ' <div class="post-'>, <Variable Node: news.pk>, <Text Node: ' post type-post status-pu'>, <Variable Node: news.title>, <Text Node: '" href="'>, <Variable Node: news.get_absolute_url>, <Text Node: '"> '>, <ThumbnailNode>, <Text Node: ' </a> </div> '>, <Variable Node: news.title>, <Text Node: '" rel="bookmark" href="'>, <Variable Node: news.get_absolute_url>, <Text Node: '">'>, <Variable Node: news.title>, <Text Node: '</a></h2> <div c'>, <Variable Node: news.publish|date:"d M Y / H:s">, <Text Node: '</span> '>, <IfNode>, <Text Node: ' '>, <django.template.defaulttags.CommentNode object at 0x7f97427d7710>, <Text Node: ' </div> '>, <Variable Node: news.body | striptags | truncatewords:20>, <Text Node: '</p> <p><a href="'>, <Variable Node: news.get_absolute_url>, <Text Node: '" class="more-link btn">?'>] |
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 | <ThumbnailNode> |
self | [<django.template.defaulttags.LoadNode object at 0x7f97427d7350>, <Text Node: ' <div class="post-'>, <Variable Node: news.pk>, <Text Node: ' post type-post status-pu'>, <Variable Node: news.title>, <Text Node: '" href="'>, <Variable Node: news.get_absolute_url>, <Text Node: '"> '>, <ThumbnailNode>, <Text Node: ' </a> </div> '>, <Variable Node: news.title>, <Text Node: '" rel="bookmark" href="'>, <Variable Node: news.get_absolute_url>, <Text Node: '">'>, <Variable Node: news.title>, <Text Node: '</a></h2> <div c'>, <Variable Node: news.publish|date:"d M Y / H:s">, <Text Node: '</span> '>, <IfNode>, <Text Node: ' '>, <django.template.defaulttags.CommentNode object at 0x7f97427d7710>, <Text Node: ' </div> '>, <Variable Node: news.body | striptags | truncatewords:20>, <Text Node: '</p> <p><a href="'>, <Variable Node: news.get_absolute_url>, <Text Node: '" class="more-link btn">?'>] |
e | IOError('cannot write mode RGBA as JPEG',) |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/sorl/thumbnail/templatetags/thumbnail.py
in render
A Node that renders safely
"""
nodelist_empty = NodeList()
def render(self, context):
try:
return self._render(context)...
except Exception:
if sorl_settings.THUMBNAIL_DEBUG:
raise
error_message = 'Thumbnail tag failed'
Variable | Value |
---|---|
self | <ThumbnailNode> |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/sorl/thumbnail/templatetags/thumbnail.py
in _render
if key == 'options':
options.update(value)
else:
options[key] = value
thumbnail = None
if file_:
thumbnail = get_thumbnail(file_, geometry, **options)...
elif sorl_settings.THUMBNAIL_DUMMY:
thumbnail = DummyImageFile(geometry)
if not thumbnail or (isinstance(thumbnail, DummyImageFile) and self.nodelist_empty):
if self.nodelist_empty:
return self.nodelist_empty.render(context)
Variable | Value |
---|---|
key | 'crop' |
geometry | u'214x174' |
expr | <django.template.base.FilterExpression object at 0x7f97427fbc90> |
self | <ThumbnailNode> |
file_ | <ImageFieldFile: photos/o/2012-04-08/pogoda.gif> |
value | u'80% top' |
thumbnail | None |
context | [{'False': False, 'None': None, 'True': True}, {}, {}] |
noresolve | {u'False': False, u'None': None, u'True': True} |
options | {'crop': u'80% top'} |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/sorl/thumbnail/shortcuts.py
in get_thumbnail
from sorl.thumbnail import default
def get_thumbnail(file_, geometry_string, **options):
"""
A shortcut for the Backend ``get_thumbnail`` method
"""
return default.backend.get_thumbnail(file_, geometry_string, **options)...
def delete(file_, delete_file=True):
"""
A shortcut for the Backend ``delete`` method
"""
Variable | Value |
---|---|
file_ | <ImageFieldFile: photos/o/2012-04-08/pogoda.gif> |
options | {'crop': u'80% top'} |
geometry_string | u'214x174' |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/sorl/thumbnail/base.py
in get_thumbnail
image_info = default.engine.get_image_info(source_image)
options['image_info'] = image_info
size = default.engine.get_image_size(source_image)
source.set_size(size)
try:
self._create_thumbnail(source_image, geometry_string, options,
thumbnail)...
self._create_alternative_resolutions(source_image, geometry_string,
options, thumbnail.name)
finally:
default.engine.cleanup(source_image)
# If the thumbnail exists we don't create it, the other option is
Variable | Value |
---|---|
size | (582, 479) |
name | u'cache/95/63/9563eb334841e926e598708bbc0d8007.jpg' |
cached | None |
self | <sorl.thumbnail.base.ThumbnailBackend object at 0x7f974c482e50> |
file_ | <ImageFieldFile: photos/o/2012-04-08/pogoda.gif> |
thumbnail | <sorl.thumbnail.images.ImageFile object at 0x7f9743a812d0> |
value | 0 |
options | {u'colorspace': u'RGB', 'crop': u'80% top', u'cropbox': None, u'format': u'JPEG', u'image_info': {'background': 0, 'duration': 0, 'transparency': 74, 'version': 'GIF89a'}, u'padding': False, u'padding_color': u'#ffffff', u'quality': 95, u'rounded': None, u'upscale': True} |
source | <sorl.thumbnail.images.ImageFile object at 0x7f974c4eda90> |
key | u'blur' |
image_info | {'background': 0, 'duration': 0, 'transparency': 74, 'version': 'GIF89a'} |
geometry_string | u'214x174' |
source_image | <PIL.GifImagePlugin.GifImageFile image mode=P size=582x479 at 0x7F9743A815D0> |
attr | u'THUMBNAIL_BLUR' |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/sorl/thumbnail/base.py
in _create_thumbnail
Creates the thumbnail by using default.engine
"""
logger.debug('Creating thumbnail file [%s] at [%s] with [%s]',
thumbnail.name, geometry_string, options)
ratio = default.engine.get_image_ratio(source_image, options)
geometry = parse_geometry(geometry_string, ratio)
image = default.engine.create(source_image, geometry, options)
default.engine.write(image, options, thumbnail)...
# It's much cheaper to set the size here
size = default.engine.get_image_size(image)
thumbnail.set_size(size)
def _create_alternative_resolutions(self, source_image, geometry_string,
options, name):
Variable | Value |
---|---|
ratio | 1.2150313152400836 |
geometry | (214, 174) |
image | <PIL.Image.Image image mode=RGBA size=214x174 at 0x7F9743A81F50> |
source_image | <PIL.GifImagePlugin.GifImageFile image mode=P size=582x479 at 0x7F9743A815D0> |
self | <sorl.thumbnail.base.ThumbnailBackend object at 0x7f974c482e50> |
thumbnail | <sorl.thumbnail.images.ImageFile object at 0x7f9743a812d0> |
options | {u'colorspace': u'RGB', 'crop': u'80% top', u'cropbox': None, u'format': u'JPEG', u'image_info': {'background': 0, 'duration': 0, 'transparency': 74, 'version': 'GIF89a'}, u'padding': False, u'padding_color': u'#ffffff', u'quality': 95, u'rounded': None, u'upscale': True} |
geometry_string | u'214x174' |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/sorl/thumbnail/engines/base.py
in write
quality = options['quality']
image_info = options.get('image_info', {})
# additional non-default-value options:
progressive = options.get('progressive', settings.THUMBNAIL_PROGRESSIVE)
raw_data = self._get_raw_data(
image, format_, quality,
image_info=image_info,
progressive=progressive...
)
thumbnail.write(raw_data)
def cleanup(self, image):
"""Some backends need to manually cleanup after thumbnails are created"""
pass
Variable | Value |
---|---|
progressive | True |
image | <PIL.Image.Image image mode=RGBA size=214x174 at 0x7F9743A81F50> |
self | <sorl.thumbnail.engines.pil_engine.Engine object at 0x7f974b988950> |
thumbnail | <sorl.thumbnail.images.ImageFile object at 0x7f9743a812d0> |
image_info | {'background': 0, 'duration': 0, 'transparency': 74, 'version': 'GIF89a'} |
format_ | u'JPEG' |
quality | 95 |
options | {u'colorspace': u'RGB', 'crop': u'80% top', u'cropbox': None, u'format': u'JPEG', u'image_info': {'background': 0, 'duration': 0, 'transparency': 74, 'version': 'GIF89a'}, u'padding': False, u'padding_color': u'#ffffff', u'quality': 95, u'rounded': None, u'upscale': True} |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/sorl/thumbnail/engines/pil_engine.py
in _get_raw_data
try:
# Do not save unnecessary exif data for smaller thumbnail size
params.pop('exif', {})
image.save(bf, **params)
except (IOError, OSError):
# Try without optimization.
params.pop('optimize')
image.save(bf, **params)...
else:
raw_data = bf.getvalue()
finally:
bf.close()
return raw_data
Variable | Value |
---|---|
bf | <cStringIO.StringO object at 0x7f9743a81430> |
progressive | True |
raw_data | None |
image | <PIL.Image.Image image mode=RGBA size=214x174 at 0x7F9743A81F50> |
params | {u'format': u'JPEG', u'progressive': True, u'quality': 95} |
image_info | {'background': 0, 'duration': 0, 'transparency': 74, 'version': 'GIF89a'} |
format_ | u'JPEG' |
quality | 95 |
self | <sorl.thumbnail.engines.pil_engine.Engine object at 0x7f974b988950> |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/PIL/Image.py
in save
fp = builtins.open(filename, "r+b")
else:
# Open also for reading ("+"), because TIFF save_all
# writer needs to go back and edit the written data.
fp = builtins.open(filename, "w+b")
try:
save_handler(self, fp, filename)...
finally:
# do what we can to clean up
if open_fp:
fp.close()
def seek(self, frame):
Variable | Value |
---|---|
fp | <cStringIO.StringO object at 0x7f9743a81430> |
format | u'JPEG' |
self | <PIL.Image.Image image mode=RGBA size=214x174 at 0x7F9743A81F50> |
filename | '' |
ext | '' |
params | {u'progressive': True, u'quality': 95} |
open_fp | False |
save_all | False |
save_handler | <function _save at 0x7f974b9bdf50> |
/home/tv/.virtualenvs/tv2/lib/python2.7/site-packages/PIL/JpegImagePlugin.py
in _save
def _save(im, fp, filename):
try:
rawmode = RAWMODE[im.mode]
except KeyError:
raise IOError("cannot write mode %s as JPEG" % im.mode)...
info = im.encoderinfo
dpi = [int(round(x)) for x in info.get("dpi", (0, 0))]
quality = info.get("quality", 0)
Variable | Value |
---|---|
fp | <cStringIO.StringO object at 0x7f9743a81430> |
im | <PIL.Image.Image image mode=RGBA size=214x174 at 0x7F9743A81F50> |
filename | '' |
Variable | Value |
---|---|
page | u'109' |
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
SERVER_SOFTWARE | 'nginx' |
SCRIPT_NAME | u'' |
REQUEST_METHOD | 'GET' |
PATH_INFO | u'/korysne/' |
SERVER_PROTOCOL | 'HTTP/1.1' |
QUERY_STRING | 'page=109' |
CONTENT_LENGTH | '' |
REMOTE_USER | '' |
SERVER_NAME | 't-v.te.ua' |
REMOTE_ADDR | '3.227.252.87' |
wsgi.url_scheme | 'http' |
SERVER_PORT | '80' |
DOCUMENT_ROOT | '/var/www/tv/tv' |
DOCUMENT_URI | '/korysne/' |
wsgi.input | <flup.server.fcgi_base.InputStream object at 0x7f97427f7ed0> |
HTTP_USER_AGENT | 'claudebot' |
HTTP_HOST | 't-v.te.ua' |
wsgi.multithread | False |
REQUEST_URI | '/korysne/?page=109' |
HTTP_ACCEPT | '*/*' |
wsgi.version | (1, 0) |
GATEWAY_INTERFACE | 'CGI/1.1' |
wsgi.run_once | False |
wsgi.errors | <flup.server.fcgi_base.TeeOutputStream object at 0x7f97427f7b90> |
wsgi.multiprocess | True |
CONTENT_TYPE | '' |
CSRF_COOKIE | u'rptexgReoqWJqwFj9jWfIYtnmix6odlG' |
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.