image file is truncated (27 bytes not processed)
Request Method: | GET |
---|---|
Request URL: | https://nn.najah.edu/news/photo/2019/06/20/238263/ |
Django Version: | 2.1.5 |
Exception Type: | OSError |
Exception Value: | image file is truncated (27 bytes not processed) |
Exception Location: | /home/nn/.virtualenvs/nn/lib/python3.6/site-packages/PIL/ImageFile.py in load, line 249 |
Python Executable: | /home/nn/.virtualenvs/nn/bin/python3 |
Python Version: | 3.6.7 |
Python Path: | ['/var/www/nn/src', '/var/www/nn/src', '/home/nn/.virtualenvs/nn/bin', '/home/nn/django-ads', '/home/nn/.virtualenvs/nn/bin/python', '/home/nn/.virtualenvs/nn/lib/python36.zip', '/home/nn/.virtualenvs/nn/lib/python3.6', '/home/nn/.virtualenvs/nn/lib/python3.6/lib-dynload', '/usr/lib/python3.6', '/home/nn/.virtualenvs/nn/lib/python3.6/site-packages', '/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/odf', '/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/odf', '/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/odf', '/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/odf', '/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/odf', '/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/odf', '/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/odf'] |
Server time: | جمعة, 29 مارس 2024 15:36:21 +0300 |
In template /var/www/nn/src/weblog/templates/weblog/base.html
, error at line 21
11 | {% comment %} <meta property="fb:app_id" content="1618141901813967"/> {% endcomment %} |
---|---|
12 | {% comment %}<link rel="preconnect" href="https://connect.facebook.net"> |
13 | <link rel="dns-prefetch" href="https://i.vimeocdn.com"> |
14 | <link rel="dns-prefetch" href="https://f.vimeocdn.com"> |
15 | <link rel="dns-prefetch" href="https://fresnel.vimeocdn.com"> |
16 | {% endcomment %} |
17 | <link rel="preconnect" href="//assets.nn.ps"> |
18 | <link rel="preconnect" href="//www.google-analytics.com"> |
19 | {% comment %}<link rel="preconnect" href="//certify-js.alexametrics.com"> |
20 | <link rel="preconnect" href="//certify.alexametrics.com">{% endcomment %} |
21 | <link rel="preconnect" href="//rum-static.pingdom.net"> |
22 | <link rel="preconnect" href="//fonts.googleapis.com"> |
23 | {# <link rel="dns-prefetch" href="//use.typekit.net">#} |
24 | |
25 | {# <link rel="stylesheet" href="https://use.typekit.net/qqg1vkc.css">#} |
26 | <link rel="stylesheet" href="//fonts.googleapis.com/earlyaccess/notokufiarabic.css"> |
27 | <link rel="stylesheet" href="//fonts.googleapis.com/earlyaccess/notonaskharabic.css"> |
28 | {# <link href="https://fonts.googleapis.com/css2?family=Almarai:wght@400;700;800&family=Tajawal:wght@400;700&display=swap" rel="stylesheet">#} |
29 | {% block meta %} |
30 | <meta name="description" content="{{ HOMEPAGE_SETTINGS.description }}" /> |
31 | <meta name="keywords" content="{{ HOMEPAGE_SETTINGS.get_keywords }}" /> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in _resolve_lookup
detail and shouldn't be called by external code. Use Variable.resolve()
instead.
"""
current = context
try: # catch-all for silent variable failures
for bit in self.lookups:
try: # dictionary lookup
current = current[bit]...
# ValueError/IndexError are for numpy.array lookup on
# numpy < 1.9 and 1.9+ respectively
except (TypeError, AttributeError, KeyError, ValueError, IndexError):
try: # attribute lookup
# Don't return class attributes if the class is the context:
if isinstance(current, BaseContext) and getattr(type(current), bit):
Variable | Value |
---|---|
bit | 'url' |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
current | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
self | <Variable: 'th.url'> |
template_name | 'weblog/post/gallerypost/full.html' |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/core/handlers/exception.py
in inner
This decorator is automatically applied to all middleware to ensure that
no middleware leaks an exception and that the next middleware in the stack
can rely on getting a response instead of an exception.
"""
@wraps(get_response)
def inner(request):
try:
response = get_response(request)...
except Exception as exc:
response = response_for_exception(request, exc)
return response
return inner
Variable | Value |
---|---|
exc | OSError('image file is truncated (27 bytes not processed)',) |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f9dee26ee80>> |
request | <WSGIRequest: GET '/news/photo/2019/06/20/238263/'> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/core/handlers/base.py
in _get_response
"HttpResponse object. It returned None instead."
% (middleware_method.__self__.__class__.__name__)
)
try:
response = response.render()
except Exception as e:
response = self.process_exception_by_middleware(e, request)...
return response
def process_exception_by_middleware(self, exception, request):
"""
Pass the exception to the exception middleware. If no middleware
Variable | Value |
---|---|
callback | <function PostDetailView at 0x7f9dee68eb70> |
callback_args | () |
callback_kwargs | {'category_slug': 'photo', 'day': '20', 'month': '06', 'pk': '238263', 'year': '2019'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f9dee087da0>> |
request | <WSGIRequest: GET '/news/photo/2019/06/20/238263/'> |
resolver | <URLResolver 'conf.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=weblog.views.PostDetailView, args=(), kwargs={'category_slug': 'photo', 'year': '2019', 'month': '06', 'day': '20', 'pk': '238263'}, url_name=post-detail, app_names=['weblog'], namespaces=['weblog']) |
response | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f9dee26ee80> |
wrapped_callback | <function PostDetailView at 0x7f9dee68eb70> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/core/handlers/base.py
in _get_response
raise ValueError(
"%s.process_template_response didn't return an "
"HttpResponse object. It returned None instead."
% (middleware_method.__self__.__class__.__name__)
)
try:
response = response.render()...
except Exception as e:
response = self.process_exception_by_middleware(e, request)
return response
def process_exception_by_middleware(self, exception, request):
Variable | Value |
---|---|
callback | <function PostDetailView at 0x7f9dee68eb70> |
callback_args | () |
callback_kwargs | {'category_slug': 'photo', 'day': '20', 'month': '06', 'pk': '238263', 'year': '2019'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f9dee087da0>> |
request | <WSGIRequest: GET '/news/photo/2019/06/20/238263/'> |
resolver | <URLResolver 'conf.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=weblog.views.PostDetailView, args=(), kwargs={'category_slug': 'photo', 'year': '2019', 'month': '06', 'day': '20', 'pk': '238263'}, url_name=post-detail, app_names=['weblog'], namespaces=['weblog']) |
response | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f9dee26ee80> |
wrapped_callback | <function PostDetailView at 0x7f9dee68eb70> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/response.py
in render
If the content has already been rendered, this is a no-op.
Return the baked response instance.
"""
retval = self
if not self._is_rendered:
self.content = self.rendered_content...
for post_callback in self._post_render_callbacks:
newretval = post_callback(retval)
if newretval is not None:
retval = newretval
return retval
Variable | Value |
---|---|
retval | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
self | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/response.py
in rendered_content
This *does not* set the final content of the response. To set the
response content, you must either call render(), or set the
content explicitly using the value of this property.
"""
template = self.resolve_template(self.template_name)
context = self.resolve_context(self.context_data)
content = template.render(context, self._request)...
return content
def add_post_render_callback(self, callback):
"""Add a new post-rendering callback.
If the response has already been rendered,
Variable | Value |
---|---|
context | {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False} |
self | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
template | <django.template.backends.django.Template object at 0x7f9decdba9b0> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/backends/django.py
in render
@property
def origin(self):
return self.template.origin
def render(self, context=None, request=None):
context = make_context(context, request, autoescape=self.backend.engine.autoescape)
try:
return self.template.render(context)...
except TemplateDoesNotExist as exc:
reraise(exc, self.backend)
def copy_exception(exc, backend=None):
"""
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
request | <WSGIRequest: GET '/news/photo/2019/06/20/238263/'> |
self | <django.template.backends.django.Template object at 0x7f9decdba9b0> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
context.template_name = self.name
return self._render(context)...
else:
return self._render(context)
def compile_nodelist(self):
"""
Parse and compile the template source into a nodelist. If debug
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <django.template.base.Template object at 0x7f9de7bafc88> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <django.template.base.Template object at 0x7f9de7bafc88> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bits | [] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <ExtendsNode: extends "weblog/post/default/full.html"> |
self | [<ExtendsNode: extends "weblog/post/default/full.html">] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <ExtendsNode: extends "weblog/post/default/full.html"> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/loader_tags.py
in render
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.
with context.render_context.push_state(compiled_parent, isolated_context=False):
return compiled_parent._render(context)...
class IncludeNode(Node):
context_key = '__include_context'
def __init__(self, template, *args, extra_context=None, isolated_context=False, **kwargs):
Variable | Value |
---|---|
block_context | <django.template.loader_tags.BlockContext object at 0x7f9de7baf080> |
compiled_parent | <django.template.base.Template object at 0x7f9dec191898> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <ExtendsNode: extends "weblog/base.html"> |
self | <ExtendsNode: extends "weblog/post/default/full.html"> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <django.template.base.Template object at 0x7f9dec191898> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bits | [] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <ExtendsNode: extends "weblog/base.html"> |
self | [<ExtendsNode: extends "weblog/base.html">] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <ExtendsNode: extends "weblog/base.html"> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/loader_tags.py
in render
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.
with context.render_context.push_state(compiled_parent, isolated_context=False):
return compiled_parent._render(context)...
class IncludeNode(Node):
context_key = '__include_context'
def __init__(self, template, *args, extra_context=None, isolated_context=False, **kwargs):
Variable | Value |
---|---|
block_context | <django.template.loader_tags.BlockContext object at 0x7f9de7baf080> |
blocks | {'base': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menuNode object at 0x7f9deda354a8>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9deda35f28>, <TextNode: '\n <div'>, <crispy_forms.templatetags.crispy_forms_tags.CrispyFormNode object at 0x7f9deda35630>, <TextNode: '\n </di'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n ... <trimmed 8477 bytes string> |
compiled_parent | <django.template.base.Template object at 0x7f9de7946898> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <django.template.defaulttags.LoadNode object at 0x7f9de68645f8> |
self | <ExtendsNode: extends "weblog/base.html"> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <django.template.base.Template object at 0x7f9de7946898> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n ' |
bits | ['', '<!DOCTYPE html>\n', '', '\n\n<html lang="ar" dir="rtl"', '', '>\n' '<head>\n' ' <meta charset="utf-8">\n' ' <meta http-equiv="X-UA-Compatible" content="IE=edge">\n' ' <meta name="viewport" content="width=device-width, initial-scale=1">\n' ' ', '', '\n ', '', '\n ', '', '\n ', '', '\n' ' <link rel="preconnect" href="//assets.nn.ps">\n' ' <link rel="preconnect" href="//www.google-analytics.com">\n' ' ', '', '\n' ' <link rel="preconnect" href="//rum-static.pingdom.net">\n' ' <link rel="preconnect" href="//fonts.googleapis.com">\n', '\n\n', '\n' ' <link rel="stylesheet" ' 'href="//fonts.googleapis.com/earlyaccess/notokufiarabic.css">\n' ' <link rel="stylesheet" ' 'href="//fonts.googleapis.com/earlyaccess/notonaskharabic.css">\n', '\n ', '\n' ' <link rel="canonical" ' 'href="https://nn.najah.edu/news/photo/2019/06/20/238263/" />\n' '\n' '\n' '\n' ' <meta name="description" content="يحضر الفلسطينيون طبق قرسا التقليدي ، ' 'في مدينة رفح جنوب قطاع غزة ، 19 يونيو ، 2019." />\n' ' <meta name="keywords" content="رفح,قرسا" /> \n' ' <!-- Schema.org markup for Google+ -->\n' ' \n' ' \n' '\n' ' <!-- Twitter Card data -->\n' ' <meta name="twitter:card" content="summary_large_image">\n' ' <meta name="twitter:site" content="@ANajahUni">\n' ' <meta name="twitter:title" content="فلسطنيون يحضرون طبق قرسا التقليدي ' 'جنوب القطاع">\n' ' <meta name="twitter:description" content="يحضر الفلسطينيون طبق قرسا ' 'التقليدي ، في مدينة رفح جنوب قطاع غزة ، 19 يونيو ، 2019.">\n' ' <meta name="twitter:creator" content="@ANajahUni">\n' ' <!-- Twitter summary card with large image must be at least 280x150px ' '-->\n' ' \n' ' \n' '\t\t<meta name="twitter:image:src" ' 'content="https://assets.nn.najah.edu/CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-20/b2aca969ecd66378cae464988a5060df.jpg">\n' '\t\t<meta property="og:image" ' 'content="https://assets.nn.najah.edu/CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-20/b2aca969ecd66378cae464988a5060df.jpg" ' '/>\n' '\t\t<meta property="og:image:secure_url" ' 'content="https://assets.nn.najah.edu/CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-20/b2aca969ecd66378cae464988a5060df.jpg" ' '/>\n' '\t\t<meta property="og:image:width" content="1200" /> \n' '\t\t<meta property="og:image:height" content="800" />\n' '\t\n' '\n' ' <!-- Open Graph data -->\n' ' <meta property="og:title" content="فلسطنيون يحضرون طبق قرسا التقليدي ' 'جنوب القطاع" />\n' ' <meta property="og:type" content="article" />\n' ' <meta property="og:url" ' 'content="https://nn.najah.edu/news/photo/2019/06/20/238263/" />\n' ' <meta property="og:description" content="يحضر الفلسطينيون طبق قرسا ' 'التقليدي ، في مدينة رفح جنوب قطاع غزة ، 19 يونيو ، 2019." />\n' ' <meta property="og:site_name" content="النجاح الإخباري" />\n' ' <meta property="article:published_time" ' 'content="2019-06-20T02:12:16+03:00" />\n' ' <meta property="article:modified_time" ' 'content="2019-06-20T02:12:16+03:00" />\n' '\n' '\n' '\n', '\n ', '<title>فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع</title>', '\n ', '', '\n ', '<link type="text/css" href="/static/css/bundle_e0a14534c35b0ad713bd.rtl.css" ' 'rel="stylesheet" />', '\n ', '', '\n ', '', '\n '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <Tag: render_block> |
self | [<django.template.defaulttags.LoadNode object at 0x7f9de68645f8>, <TextNode: '<!DOCTYPE html>\n'>, <django.template.defaulttags.LoadNode object at 0x7f9de6864048>, <TextNode: '\n\n<html lang="ar" dir="rt'>, <Block Node: htmlattrs. Contents: []>, <TextNode: '>\n<head>\n <meta charse'>, <django.template.defaulttags.CommentNode object at 0x7f9de51eae10>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de756ca90>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de756cfd0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de756c8d0>, <TextNode: '\n <link rel="preconnec'>, <django.template.defaulttags.CommentNode object at 0x7f9de67cf198>, <TextNode: '\n <link rel="preconnec'>, <TextNode: '\n\n'>, <TextNode: '\n <link rel="styleshee'>, <TextNode: '\n '>, <Block Node: meta. Contents: [<TextNode: '\n <meta name="desc'>, <Variable Node: HOMEPAGE_SETTINGS.description>, <TextNode: '" />\n <meta name="'>, <Variable Node: HOMEPAGE_SETTINGS.get_keywords>, <TextNode: '" />\n '>]>, <TextNode: '\n '>, <Block Node: page_title_wrapper. Contents: [<TextNode: '<title>'>, <Block Node: page_title. Contents: []>, <TextNode: '</title>'>]>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de67cfac8>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9dec60fcc0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9dec24c4a8>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9dec24c400>, <TextNode: '\n '>, <Tag: render_block>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/classytags/core.py
in render
"""
INTERNAL method to prepare rendering
Usually you should not override this method, but rather use render_tag.
"""
items = self.kwargs.items()
kwargs = dict([(key, value.resolve(context)) for key, value in items])
kwargs.update(self.blocks)
return self.render_tag(context, **kwargs)...
def render_tag(self, context, **kwargs):
"""
The method you should override in your custom tags
"""
raise NotImplementedError
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
items | dict_items([('name', <classytags.values.StringValue object at 0x7f9dec24c0f0>), ('postprocessor', <TemplateConstant: None>)]) |
kwargs | {'name': 'css', 'nodelist': [<TextNode: '\n<style>\n\t#local_election'>, <django.templatetags.static.StaticNode object at 0x7f9de6864a58>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de6864da0>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de68647b8>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de6864898>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de128>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dea90>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dee80>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deeb8>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de4e0>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dee10>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de2b0>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deb00>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deba8>, <TextNode: '">\n <link rel="manifes'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dec50>, <TextNode: '">\n <meta name="msappl'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de5f8>, <TextNode: '">\n <meta name="theme-'>, <django.template.defaulttags.CommentNode object at 0x7f9dec24ccc0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9dec24cf60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb842b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb84828>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb84748>, <TextNode: '\n '>, <django.template.loader_tags.IncludeNode object at 0x7f9decb84cc0>, <TextNode: '\n '>, <Tag: render_block>], 'postprocessor': None} |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/sekizai/templatetags/sekizai_tags.py
in render_tag
Argument('postprocessor', required=False, default=None, resolve=False),
parser_class=SekizaiParser,
)
def render_tag(self, context, name, postprocessor, nodelist):
if not validate_context(context):
return nodelist.render(context)
rendered_contents = nodelist.render(context)...
varname = get_varname()
data = '\n'.join(context[varname][name])
if postprocessor:
func = import_processor(postprocessor)
data = func(context, data, name)
return '%s\n%s' % (data, rendered_contents)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
name | 'css' |
nodelist | [<TextNode: '\n<style>\n\t#local_election'>, <django.templatetags.static.StaticNode object at 0x7f9de6864a58>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de6864da0>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de68647b8>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de6864898>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de128>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dea90>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dee80>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deeb8>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de4e0>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dee10>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de2b0>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deb00>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deba8>, <TextNode: '">\n <link rel="manifes'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dec50>, <TextNode: '">\n <meta name="msappl'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de5f8>, <TextNode: '">\n <meta name="theme-'>, <django.template.defaulttags.CommentNode object at 0x7f9dec24ccc0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9dec24cf60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb842b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb84828>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb84748>, <TextNode: '\n '>, <django.template.loader_tags.IncludeNode object at 0x7f9decb84cc0>, <TextNode: '\n '>, <Tag: render_block>] |
postprocessor | None |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n ' |
bits | ['\n' '<style>\n' '\t#local_elections {\n' '\t\ttransition-property: color;\n' '\t\ttransition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n' '\t\ttransition-duration: 150ms;\n' '\n' '\t}\n' '</style>\n' '\n' ' <link rel="apple-touch-icon" sizes="57x57" href="', '/static/weblog/img/favicon2/apple-icon-57x57.png', '">\n <link rel="apple-touch-icon" sizes="60x60" href="', '/static/weblog/img/favicon2/apple-icon-60x60.png', '">\n <link rel="apple-touch-icon" sizes="72x72" href="', '/static/weblog/img/favicon2/apple-icon-72x72.png', '">\n <link rel="apple-touch-icon" sizes="76x76" href="', '/static/weblog/img/favicon2/apple-icon-76x76.png', '">\n <link rel="apple-touch-icon" sizes="114x114" href="', '/static/weblog/img/favicon2/apple-icon-114x114.png', '">\n <link rel="apple-touch-icon" sizes="120x120" href="', '/static/weblog/img/favicon2/apple-icon-120x120.png', '">\n <link rel="apple-touch-icon" sizes="144x144" href="', '/static/weblog/img/favicon2/apple-icon-144x144.png', '">\n <link rel="apple-touch-icon" sizes="152x152" href="', '/static/weblog/img/favicon2/apple-icon-152x152.png', '">\n <link rel="apple-touch-icon" sizes="180x180" href="', '/static/weblog/img/favicon2/apple-icon-180x180.png', '">\n <link rel="icon" type="image/png" sizes="192x192" href="', '/static/weblog/img/favicon2/android-icon-192x192.png', '">\n <link rel="icon" type="image/png" sizes="32x32" href="', '/static/weblog/img/favicon2/favicon-32x32.png', '">\n <link rel="icon" type="image/png" sizes="96x96" href="', '/static/weblog/img/favicon2/favicon-96x96.png', '">\n <link rel="icon" type="image/png" sizes="16x16" href="', '/static/weblog/img/favicon2/favicon-16x16.png', '">\n <link rel="manifest" href="', '/static/weblog/img/favicon2/manifest.json', '">\n' ' <meta name="msapplication-TileColor" content="#ffffff">\n' ' <meta name="msapplication-TileImage" content="', '/static/weblog/img/favicon2/ms-icon-144x144.png', '">\n <meta name="theme-color" content="#ffffff">\n ', '', '\n ', '', '\n ', '', '\n ', '', '\n ', '', '\n ', '\n' '\n' '<link rel="manifest" href="/push/manifest.json" />\n' '\n' '\n' '<!-- <input type="hidden" name="csrfmiddlewaretoken" ' 'value="NBIcprxlXiarbqCfuLhIvvFQroQpT3BDiP4KdZaDFucu7j3MxyaEQ0jE1gEzCIOw"> ' '-->\n' '<script type="text/javascript">\n' ' var django_infopush_js_dynamic_vars = {\n' ' vapid_public_key: ' '"BKCaMjGoOmLPO8oI4ipkrSqpU4uDaAVcxpUnA1-9QRIighnQLuvV_Z0ZiB5oeEGQgjbcXVpmcdWcglDgJgE7UXY",\n' ' save_url: "/push/save/",\n' ' deactivate_url: "/push/deactivate/",\n' ' on_button_label: "Turn push notifications on",\n' ' off_button_label: "Turn push notifications off"\n' ' };\n' '</script>\n' '<script defer type="text/javascript" src="/static/push/js/jstz.min.js?1" ' 'charset="utf-8"></script>\n' '<script defer type="text/javascript" src="/static/push/js/push.js?56" ' 'charset="utf-8"></script>\n', '\n '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <Tag: render_block> |
self | [<TextNode: '\n<style>\n\t#local_election'>, <django.templatetags.static.StaticNode object at 0x7f9de6864a58>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de6864da0>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de68647b8>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9de6864898>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de128>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dea90>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dee80>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deeb8>, <TextNode: '">\n <link rel="apple-t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de4e0>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dee10>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de2b0>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deb00>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7f9dec9deba8>, <TextNode: '">\n <link rel="manifes'>, <django.templatetags.static.StaticNode object at 0x7f9dec9dec50>, <TextNode: '">\n <meta name="msappl'>, <django.templatetags.static.StaticNode object at 0x7f9dec9de5f8>, <TextNode: '">\n <meta name="theme-'>, <django.template.defaulttags.CommentNode object at 0x7f9dec24ccc0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9dec24cf60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb842b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb84828>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9decb84748>, <TextNode: '\n '>, <django.template.loader_tags.IncludeNode object at 0x7f9decb84cc0>, <TextNode: '\n '>, <Tag: render_block>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/classytags/core.py
in render
"""
INTERNAL method to prepare rendering
Usually you should not override this method, but rather use render_tag.
"""
items = self.kwargs.items()
kwargs = dict([(key, value.resolve(context)) for key, value in items])
kwargs.update(self.blocks)
return self.render_tag(context, **kwargs)...
def render_tag(self, context, **kwargs):
"""
The method you should override in your custom tags
"""
raise NotImplementedError
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
items | dict_items([('name', <classytags.values.StringValue object at 0x7f9decb84320>), ('postprocessor', <TemplateConstant: None>)]) |
kwargs | {'name': 'headerjs', 'nodelist': [<TextNode: '\n</head>\n<body class="web'>, <Block Node: theme_class. Contents: [<TextNode: 'theme-light'>]>, <TextNode: ' '>, <Block Node: body_classes. Contents: []>, <TextNode: '">\n\t'>, <django.template.defaulttags.CommentNode object at 0x7f9decb84208>, <TextNode: '\n'>, <django.contrib.flatpages.templatetags.flatpages.FlatpageNode object at 0x7f9decb84a58>, <TextNode: '\n'>, <django.template.defaulttags.CommentNode object at 0x7f9decb84470>, <TextNode: '\n'>, <Block Node: body_top. Contents: []>, <TextNode: '\n'>, <Tag: render_block>], 'postprocessor': None} |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/sekizai/templatetags/sekizai_tags.py
in render_tag
Argument('postprocessor', required=False, default=None, resolve=False),
parser_class=SekizaiParser,
)
def render_tag(self, context, name, postprocessor, nodelist):
if not validate_context(context):
return nodelist.render(context)
rendered_contents = nodelist.render(context)...
varname = get_varname()
data = '\n'.join(context[varname][name])
if postprocessor:
func = import_processor(postprocessor)
data = func(context, data, name)
return '%s\n%s' % (data, rendered_contents)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
name | 'headerjs' |
nodelist | [<TextNode: '\n</head>\n<body class="web'>, <Block Node: theme_class. Contents: [<TextNode: 'theme-light'>]>, <TextNode: ' '>, <Block Node: body_classes. Contents: []>, <TextNode: '">\n\t'>, <django.template.defaulttags.CommentNode object at 0x7f9decb84208>, <TextNode: '\n'>, <django.contrib.flatpages.templatetags.flatpages.FlatpageNode object at 0x7f9decb84a58>, <TextNode: '\n'>, <django.template.defaulttags.CommentNode object at 0x7f9decb84470>, <TextNode: '\n'>, <Block Node: body_top. Contents: []>, <TextNode: '\n'>, <Tag: render_block>] |
postprocessor | None |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n' |
bits | ['\n</head>\n<body class="weblog ', 'theme-light', ' ', '', '">\n\t', '', '\n', '', '\n', '', '\n', '', '\n'] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <Tag: render_block> |
self | [<TextNode: '\n</head>\n<body class="web'>, <Block Node: theme_class. Contents: [<TextNode: 'theme-light'>]>, <TextNode: ' '>, <Block Node: body_classes. Contents: []>, <TextNode: '">\n\t'>, <django.template.defaulttags.CommentNode object at 0x7f9decb84208>, <TextNode: '\n'>, <django.contrib.flatpages.templatetags.flatpages.FlatpageNode object at 0x7f9decb84a58>, <TextNode: '\n'>, <django.template.defaulttags.CommentNode object at 0x7f9decb84470>, <TextNode: '\n'>, <Block Node: body_top. Contents: []>, <TextNode: '\n'>, <Tag: render_block>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/classytags/core.py
in render
"""
INTERNAL method to prepare rendering
Usually you should not override this method, but rather use render_tag.
"""
items = self.kwargs.items()
kwargs = dict([(key, value.resolve(context)) for key, value in items])
kwargs.update(self.blocks)
return self.render_tag(context, **kwargs)...
def render_tag(self, context, **kwargs):
"""
The method you should override in your custom tags
"""
raise NotImplementedError
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
items | dict_items([('name', <classytags.values.StringValue object at 0x7f9decb844a8>), ('postprocessor', <TemplateConstant: None>)]) |
kwargs | {'name': 'body_top_html', 'nodelist': [<TextNode: '\n\n<form class="form-inlin'>, <django.templatetags.i18n.TranslateNode object at 0x7f9decb84358>, <TextNode: '</h5>\n <button'>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de1d0>, <TextNode: '" area-labelledby="search'>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de710>, <TextNode: '</button>\n </div'>, <Block Node: weblog_toolbar. Contents: [<weblog.templatetags.weblog_tags.ToolbarNode object at 0x7f9dec9deb70>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9dec9de320>, <TextNode: '\n \n '>, <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n... <trimmed 6370 bytes string> |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/sekizai/templatetags/sekizai_tags.py
in render_tag
Argument('postprocessor', required=False, default=None, resolve=False),
parser_class=SekizaiParser,
)
def render_tag(self, context, name, postprocessor, nodelist):
if not validate_context(context):
return nodelist.render(context)
rendered_contents = nodelist.render(context)...
varname = get_varname()
data = '\n'.join(context[varname][name])
if postprocessor:
func = import_processor(postprocessor)
data = func(context, data, name)
return '%s\n%s' % (data, rendered_contents)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
name | 'body_top_html' |
nodelist | [<TextNode: '\n\n<form class="form-inlin'>, <django.templatetags.i18n.TranslateNode object at 0x7f9decb84358>, <TextNode: '</h5>\n <button'>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de1d0>, <TextNode: '" area-labelledby="search'>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de710>, <TextNode: '</button>\n </div'>, <Block Node: weblog_toolbar. Contents: [<weblog.templatetags.weblog_tags.ToolbarNode object at 0x7f9dec9deb70>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9dec9de320>, <TextNode: '\n \n '>, <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menu... <trimmed 5955 bytes string> |
postprocessor | None |
self | <Tag: render_block> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n \n ' |
bits | ['\n' '\n' '<form class="form-inline search-form d-none d-lg-block" action="/search/" ' 'method="get">\n' ' <div id="modal-search" class="modal fade page-model modal-fullscreen" ' 'tabindex="-1" role="dialog">\n' ' <div class="modal-dialog" role="document">\n' ' <div class="modal-content">\n' ' <div class="modal-header d-flex justify-content-between ' 'align-items-center">\n' ' <h5 class="modal-title">', 'ابحث', '</h5>\n' ' <button type="button" class="close" data-dismiss="modal" ' 'aria-label="Close">\n' ' <span aria-hidden="true">×</span>\n' ' </button>\n' ' </div>\n' ' <div class="modal-body">\n' ' <input type="text" name="q" class="form-control form-control-lg ' 'w-100" placeholder="', 'ابحث', '" area-labelledby="search_form_label">\n' ' </div>\n' ' <div class="modal-footer">\n' ' <button type="button" class="btn btn-secondary" ' 'data-dismiss="modal">الغاء</button>\n' ' <button type="button" class="btn btn-primary">', 'ابحث', '</button>\n' ' </div>\n' ' </div>\n' ' </div>\n' ' </div>\n' '</form>\n' '\n' '<div id="canvas">\n' '\n' ' ', '', '\n ', '', '\n \n '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menuNode object at 0x7f9deda354a8>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9deda35f28>, <TextNode: '\n <div'>, <crispy_forms.templatetags.crispy_forms_tags.CrispyFormNode object at 0x7f9deda35630>, <TextNode: '\n </di'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <ForN... <trimmed 4629 bytes string> |
self | [<TextNode: '\n\n<form class="form-inlin'>, <django.templatetags.i18n.TranslateNode object at 0x7f9decb84358>, <TextNode: '</h5>\n <button'>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de1d0>, <TextNode: '" area-labelledby="search'>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de710>, <TextNode: '</button>\n </div'>, <Block Node: weblog_toolbar. Contents: [<weblog.templatetags.weblog_tags.ToolbarNode object at 0x7f9dec9deb70>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9dec9de320>, <TextNode: '\n \n '>, <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menu... <trimmed 5955 bytes string> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menuNode object at 0x7f9deda354a8>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9deda35f28>, <TextNode: '\n <div'>, <crispy_forms.templatetags.crispy_forms_tags.CrispyFormNode object at 0x7f9deda35630>, <TextNode: '\n </di'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <ForN... <trimmed 4629 bytes string> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 |
---|---|
block | <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menuNode object at 0x7f9deda354a8>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9deda35f28>, <TextNode: '\n <div'>, <crispy_forms.templatetags.crispy_forms_tags.CrispyFormNode object at 0x7f9deda35630>, <TextNode: '\n </di'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <ForN... <trimmed 4629 bytes string> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f9de7baf080> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
push | <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menuNode object at 0x7f9deda354a8>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9deda35f28>, <TextNode: '\n <div'>, <crispy_forms.templatetags.crispy_forms_tags.CrispyFormNode object at 0x7f9deda35630>, <TextNode: '\n </di'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <ForN... <trimmed 4629 bytes string> |
self | <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menuNode object at 0x7f9deda354a8>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9deda35f28>, <TextNode: '\n <div'>, <crispy_forms.templatetags.crispy_forms_tags.CrispyFormNode object at 0x7f9deda35630>, <TextNode: '\n </di'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <ForN... <trimmed 4629 bytes string> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n ' |
bits | ['\n ', '\n' ' <div class="topbar border-bottom" id="topbar">\n' ' \n' ' <div id="widgets_bar" class="py-1 widgets-bar d-print-none">\n' ' <div class="container">\n' ' <div class="d-flex justify-content-between ' 'align-items-center">\n' ' <div class="d-none d-lg-flex justify-content-start ' 'align-items-center">\n' ' <div id="nnpsClockDisplay"></div>\n' ' </div>\n' ' <div id="prayerTimes" class="d-none d-lg-flex ' 'justify-content-center align-items-center" data-toggle="tooltip" ' 'data-placement="bottom" data-html="true" title="-">\n' ' <i class="fas fa-mosque mr-2"></i>\n' ' <div id="nextPrayerWrapper"><span ' 'id="nextPrayerTimeLabel"></span><span id="nextPrayerTime"></span></div>\n' ' </div>\n' '\t\t\t\n' '\t\t\t\n' ' <div class="d-flex justify-content-end ' 'align-items-center">\n' '\t\t\t\t\t\t\t\n' ' <a class="d-flex align-items-center" ' 'href="/nbc/live/" title="البث المباشر">\n' ' <span class="fa-stack text-primary">\n' ' <i class="fas fa-square fa-stack-2x"></i>\n' ' <i class="fas fa-envelope fa-stack-1x ' 'fa-inverse"></i>\n' ' </span>\n' ' <span class="d-none d-xl-inline"> البث ' 'المباشر</span><span class="sr-only sr-only-focusable">البث المباشر</span>\n' ' </a>\n' '\t\t\t\t\t\t\t\n' '\n' '\n' '\n' ' <a class="d-flex align-items-center ml-1 ' 'ml-lg-3" href="/najahfm/">\n' ' <span class="fa-stack text-primary">\n' ' <i class="fas fa-square fa-stack-2x"></i>\n' ' <i class="fas fa-music fa-stack-1x ' 'fa-inverse"></i>\n' ' </span>\n' ' <span class="d-none d-xl-inline"> إذاعة ' 'النجاح</span><span class="sr-only sr-only-focusable">إذاعة النجاح</span>\n' ' </a>\n' ' <a class="d-flex align-items-center ml-1 ' 'ml-lg-3" href="/social-media/">\n' ' <div id="socialLinkCarousel" class="carousel ' 'slide carousel-fade" data-ride="carousel" data-pause="false" ' 'data-interval="1000" style="width:29.61px;">\n' ' <div class="carousel-inner">\n' ' <div class="carousel-item ' 'link-facebook active">\n' ' <span class="fa-stack">\n' ' <i class="fas fa-square ' 'fa-stack-2x"></i>\n' ' <i class="fab fa-facebook ' 'fa-stack-1x fa-inverse"></i>\n' ' </span>\n' ' </div>\n' ' <div class="carousel-item ' 'link-twitter">\n' ' <span class="fa-stack">\n' ' <i class="fas fa-square ' 'fa-stack-2x"></i>\n' ' <i class="fab fa-twitter ' 'fa-stack-1x fa-inverse"></i>\n' ' </span>\n' ' </div>\n' ' <div class="carousel-item ' 'link-instagram">\n' ' <span class="fa-stack">\n' ' <i class="fas fa-square ' 'fa-stack-2x"></i>\n' ' <i class="fab fa-instagram ' 'fa-stack-1x fa-inverse"></i>\n' ' ... <trimmed 13062 bytes string> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]> |
self | [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'>, <TextNode: '\n <footer class="f'>, <django.templatetags.i18n.TranslateNode object at 0x7f9deda35ac8>, <TextNode: '</a>\n '>, <sitetree.templatetags.sitetree.sitetree_menuNode object at 0x7f9deda354a8>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9deda35f28>, <TextNode: '\n <div'>, <crispy_forms.templatetags.crispy_forms_tags.CrispyFormNode object at 0x7f9deda35630>, <TextNode: '\n </di'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n ... <trimmed 4658 bytes string> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 |
---|---|
block | <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f9de7baf080> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
push | <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]> |
self | <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '">\n ' |
bits | ['\n <div class="container', '', '">\n '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <Block Node: content. Contents: []> |
self | [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Block Node: content. Contents: []> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 |
---|---|
block | <Block Node: content. Contents: [<TextNode: '\n '>, <Block Node: post_top. Contents: []>, <TextNode: '\n <div class="row">\n '>, <Variable Node: post.get_absolute_url>, <TextNode: '">\n <meta '>, <Variable Node: post.excerpt|default:post.title>, <TextNode: '">\n\t\t\t\t'>, <Block Node: post_meta. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263860>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_thumbnail. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263668>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_social_share. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263518>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_content. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263a58>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n\t\t\t'>, <Block Node: more_like_this_wrapper. Contents: [<TextNode: '\n\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263a20>, <TextNode: '\n\t\t\t'>]>, <TextNode: '\n\t\t\t<div id="prevArticleI'>, <Variable Node: post.previous_post.pk>, <TextNode: '"></div>\n\t\t\t<div id="prev'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263da0>, <TextNode: '\n </div>\n </div'>, <IfNode>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7946fd0>, <TextNode: '\n\n'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f9de7baf080> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
push | <Block Node: content. Contents: [<TextNode: '\n '>, <Block Node: post_top. Contents: []>, <TextNode: '\n <div class="row">\n '>, <Variable Node: post.get_absolute_url>, <TextNode: '">\n <meta '>, <Variable Node: post.excerpt|default:post.title>, <TextNode: '">\n\t\t\t\t'>, <Block Node: post_meta. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263860>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_thumbnail. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263668>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_social_share. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263518>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_content. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263a58>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n\t\t\t'>, <Block Node: more_like_this_wrapper. Contents: [<TextNode: '\n\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263a20>, <TextNode: '\n\t\t\t'>]>, <TextNode: '\n\t\t\t<div id="prevArticleI'>, <Variable Node: post.previous_post.pk>, <TextNode: '"></div>\n\t\t\t<div id="prev'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263da0>, <TextNode: '\n </div>\n </div'>, <IfNode>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7946fd0>, <TextNode: '\n\n'>]> |
self | <Block Node: content. Contents: []> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n ' |
bits | ['\n '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <Block Node: post_top. Contents: []> |
self | [<TextNode: '\n '>, <Block Node: post_top. Contents: []>, <TextNode: '\n <div class="row">\n '>, <Variable Node: post.get_absolute_url>, <TextNode: '">\n <meta '>, <Variable Node: post.excerpt|default:post.title>, <TextNode: '">\n\t\t\t\t'>, <Block Node: post_meta. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263860>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_thumbnail. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263668>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_social_share. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263518>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n\t\t\t\t'>, <Block Node: post_content. Contents: [<TextNode: '\n\t\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263a58>, <TextNode: '\n\t\t\t\t'>]>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n\t\t\t'>, <Block Node: more_like_this_wrapper. Contents: [<TextNode: '\n\t\t\t\t'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263a20>, <TextNode: '\n\t\t\t'>]>, <TextNode: '\n\t\t\t<div id="prevArticleI'>, <Variable Node: post.previous_post.pk>, <TextNode: '"></div>\n\t\t\t<div id="prev'>, <django.template.loader_tags.IncludeNode object at 0x7f9dec263da0>, <TextNode: '\n </div>\n </div'>, <IfNode>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7946fd0>, <TextNode: '\n\n'>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Block Node: post_top. Contents: []> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 |
---|---|
block | <Block Node: post_top. Contents: [<TextNode: '\n <div class="content-'>, <TextNode: '\n <div class="bg-d'>, <WithNode>, <TextNode: '\n </div>\n '>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <TextNode: '\n </div>\n'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f9de7baf080> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
push | <Block Node: post_top. Contents: [<TextNode: '\n <div class="content-'>, <TextNode: '\n <div class="bg-d'>, <WithNode>, <TextNode: '\n </div>\n '>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <TextNode: '\n </div>\n'>]> |
self | <Block Node: post_top. Contents: []> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('\n' ' <div class="bg-dark">\n' ' <div class="row mb-3">\n' ' <div class="col-md-16">\n' ' ') |
bits | ['\n <div class="content-wrapper">\n', '\n' ' <div class="bg-dark">\n' ' <div class="row mb-3">\n' ' <div class="col-md-16">\n' ' '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <WithNode> |
self | [<TextNode: '\n <div class="content-'>, <TextNode: '\n <div class="bg-d'>, <WithNode>, <TextNode: '\n </div>\n '>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <TextNode: '\n </div>\n'>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <WithNode> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/defaulttags.py
in render
def __repr__(self):
return '<%s>' % self.__class__.__name__
def render(self, context):
values = {key: val.resolve(context) for key, val in self.extra_context.items()}
with context.push(**values):
return self.nodelist.render(context)...
@register.tag
def autoescape(parser, token):
"""
Force autoescape behavior for this block.
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <WithNode> |
values | {'photos': <QuerySet [<GalleryPhoto: GalleryPhoto object (8192)>, <GalleryPhoto: GalleryPhoto object (8193)>, <GalleryPhoto: GalleryPhoto object (8191)>]>} |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n ' |
bits | ['\n '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <IfNode> |
self | [<TextNode: '\n '>, <IfNode>, <TextNode: '\n '>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <IfNode> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/defaulttags.py
in render
match = condition.eval(context)
except VariableDoesNotExist:
match = None
else: # else clause
match = True
if match:
return nodelist.render(context)...
return ''
class LoremNode(Node):
def __init__(self, count, method, common):
Variable | Value |
---|---|
condition | (literal <django.template.base.FilterExpression object at 0x7f9de7baf4a8>) |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
match | 3 |
nodelist | [<TextNode: '\n '>, <Variable Node: post.id>, <TextNode: '" class="content-carousel'>, <ForNode: for photo in photos, tail_len: 7>, <TextNode: '\n '>, <ForNode: for photo in photos, tail_len: 13>, <TextNode: '\n '>, <Variable Node: post.id>, <TextNode: '" role="button" data-slid'>, <django.templatetags.i18n.TranslateNode object at 0x7f9de529ccc0>, <TextNode: '</span>\n '>, <Variable Node: post.id>, <TextNode: '" role="button" data-slid'>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec1917b8>, <TextNode: '</span>\n '>] |
self | <IfNode> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 = node.render_annotated(context)...
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('\n' ' </ol>\n' ' <div class="carousel-inner">\n' ' ') |
bits | ['\n <div id="carouselFull', '238263', '" class="content-carousel carousel slide carousel-fade" ' 'data-ride="carousel">\n' ' <ol class="carousel-indicators">\n' ' ', '\n' ' <li data-target="#carouselFull238263" ' 'data-slide-to="0" class="active"></li>\n' ' \n' ' <li data-target="#carouselFull238263" ' 'data-slide-to="1"></li>\n' ' \n' ' <li data-target="#carouselFull238263" ' 'data-slide-to="2"></li>\n' ' ', '\n' ' </ol>\n' ' <div class="carousel-inner">\n' ' '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
node | <ForNode: for photo in photos, tail_len: 13> |
self | [<TextNode: '\n '>, <Variable Node: post.id>, <TextNode: '" class="content-carousel'>, <ForNode: for photo in photos, tail_len: 7>, <TextNode: '\n '>, <ForNode: for photo in photos, tail_len: 13>, <TextNode: '\n '>, <Variable Node: post.id>, <TextNode: '" role="button" data-slid'>, <django.templatetags.i18n.TranslateNode object at 0x7f9de529ccc0>, <TextNode: '</span>\n '>, <Variable Node: post.id>, <TextNode: '" role="button" data-slid'>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec1917b8>, <TextNode: '</span>\n '>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <ForNode: for photo in photos, tail_len: 13> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/defaulttags.py
in render
unpacked_vars = dict(zip(self.loopvars, item))
pop_context = True
context.update(unpacked_vars)
else:
context[self.loopvars[0]] = item
for node in self.nodelist_loop:
nodelist.append(node.render_annotated(context))...
if pop_context:
# Pop the loop variables pushed on to the context to avoid
# the context ending up in an inconsistent state when other
# tags (e.g., include and with) push data to context.
context.pop()
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
i | 1 |
item | <GalleryPhoto: GalleryPhoto object (8193)> |
len_values | 3 |
loop_dict | {'counter': 2, 'counter0': 1, 'first': False, 'last': False, 'parentloop': {}, 'revcounter': 2, 'revcounter0': 1} |
node | <Variable Node: th.url> |
nodelist | ['\n ', '', '\n <div class="carousel-item', ' active', '">\n' ' <img class="d-block w-100" src="', 'https://assets.nn.najah.edu/CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-20/b205a8dfdea0eee1b3038d030876ba99.jpg', '"\n alt="', 'يحضر الفلسطينيون طبق قرسا التقليدي ، في مدينة رفح جنوب قطاع غزة ، 19 يونيو ، ' '2019.', '">\n' ' <div class="carousel-caption">\n' ' <p class="border-bottom">\n' ' ', '\n' ' صورة 1 من 3.\n' ' ', '\n' ' </p>\n' ' <p>', 'يحضر الفلسطينيون طبق قرسا التقليدي ، في مدينة رفح جنوب قطاع غزة ، 19 يونيو ، ' '2019.', '</p>\n' ' </div>\n' ' </div>\n' ' ', '\n ', '', '\n <div class="carousel-item', '', '">\n' ' <img class="d-block w-100" src="'] |
num_loopvars | 1 |
parentloop | {} |
pop_context | False |
self | <ForNode: for photo in photos, tail_len: 13> |
unpack | False |
values | <QuerySet [<GalleryPhoto: GalleryPhoto object (8192)>, <GalleryPhoto: GalleryPhoto object (8193)>, <GalleryPhoto: GalleryPhoto object (8191)>]> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)...
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Variable Node: th.url> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in render
self.filter_expression = filter_expression
def __repr__(self):
return "<Variable Node: %s>" % self.filter_expression
def render(self, context):
try:
output = self.filter_expression.resolve(context)...
except UnicodeDecodeError:
# Unicode conversion can fail sometimes for reasons out of our
# control (e.g. exception rendering). In that case, we fail
# quietly.
return ''
return render_value_in_context(output, context)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Variable Node: th.url> |
/home/nn/.virtualenvs/nn/lib/python3.6/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 |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
ignore_failures | False |
self | <django.template.base.FilterExpression object at 0x7f9de79dc898> |
/home/nn/.virtualenvs/nn/lib/python3.6/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:
is_safe = isinstance(value, SafeData)
msgid = value.replace('%', '%%')
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
self | <Variable: 'th.url'> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/template/base.py
in _resolve_lookup
# ValueError/IndexError are for numpy.array lookup on
# numpy < 1.9 and 1.9+ respectively
except (TypeError, AttributeError, KeyError, ValueError, IndexError):
try: # attribute lookup
# Don't return class attributes if the class is the context:
if isinstance(current, BaseContext) and getattr(type(current), bit):
raise AttributeError
current = getattr(current, bit)...
except (TypeError, AttributeError):
# Reraise if the exception was raised by a @property
if not isinstance(current, BaseContext) and bit in dir(current):
raise
try: # list-index lookup
current = current[int(bit)]
Variable | Value |
---|---|
bit | 'url' |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'object': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'post': <GalleryPost: فلسطنيون يحضرون طبق قرسا التقليدي جنوب القطاع>, 'view': <weblog.views.PostDetailView object at 0x7f9de7baf2e8>, 'weblog_edit_mode': False, 'flat_pages': <QuerySet [<FlatPage: /hidden/live-demo/ -- بت تجريبي>, <FlatPage: /legal/privacy-policy/ -- سياسة الخصوصية>, <FlatPage: /najahfm/ -- إذاعة النجاح>, <FlatPage: /nbc/annu/ -- حفلات التخرح>, <FlatPage: /nbc/live/ -- البث المباشر>, <FlatPage: /pages/about/ -- من نحن>, <FlatPage: /pages/contact-us/ -- إتصل بنا>, <FlatPage: /pages/editorial-board/ -- هيئة التحرير>, <FlatPage: /plustv/ -- Plus TV>, <FlatPage: /social-media/ -- التواصل الإجتماعي>]>, 'menu_last_invalidation': 1711714320.9073353}, {'block': <Block Node: base. Contents: [<TextNode: '\n '>, <Block Node: topbar. Contents: [<TextNode: '\n <div class="topb'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f28>, <TextNode: '\n <div id="wid'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625be0>, <TextNode: '\n\t\t\t'>, <django.template.defaulttags.CommentNode object at 0x7f9de6625f60>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625160>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6625c88>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n '>, <django.templatetags.i18n.TranslateNode object at 0x7f9dec9de908>, <TextNode: '</a> \n\t\t '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c9b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c2b0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7a1c5f8>, <TextNode: '\n </di'>, <django.templatetags.cache.CacheNode object at 0x7f9de7f474a8>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n'>, <TextNode: '\n </div>\n '>, <Block Node: breadcrumbs_wrapper. Contents: [<TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9de7f47eb8>, <TextNode: '\n '>]>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n '>, <Block Node: featured_content. Contents: []>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de6889ba8>, <TextNode: '\n <div class="cont'>, <django.template.library.InclusionNode object at 0x7f9de6889cc0>, <TextNode: '\n'>, <TextNode: '\n </div>\n <'>, <IfNode>, <TextNode: '\n '>, <Block Node: nnu_news. Contents: [<TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de78439b0>, <TextNode: '\n <div'>, <IfNode>, <TextNode: '\n\t\t\t\t\t\t\t</video>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843da0>, <TextNode: '\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843eb8>, <TextNode: '\n </div>\n '>, <django.template.defaulttags.CommentNode object at 0x7f9de7843080>, <TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: featrued. Contents: []>, <TextNode: '\n '>, <Block Node: content_wrapper. Contents: [<TextNode: '\n <div cla'>, <Block Node: content_extra_classes. Contents: []>, <TextNode: '">\n '>, <Block Node: content. Contents: []>, <TextNode: '\n </div>\n '>]>, <TextNode: '\n </div>\n\n '>, <Block Node: footer_blocks. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7f9de7843c18>, <TextNode: '\n '>, <django.templatetags.cache.CacheNode object at 0x7f9dec208588>, <TextNode: '\n </div>\n\n'... <trimmed 7090 bytes string> |
current | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
self | <Variable: 'th.url'> |
template_name | 'weblog/post/gallerypost/full.html' |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/cachefiles/__init__.py
in url
@property
def path(self):
return self._storage_attr('path')
@property
def url(self):
return self._storage_attr('url')...
def generate(self, force=False):
"""
Generate the file. If ``force`` is ``True``, the file will be generated
whether the file already exists or not.
Variable | Value |
---|---|
self | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/cachefiles/__init__.py
in _storage_attr
# require the file to exist; they do not need its contents to work. This
# distinction gives the user the flexibility to create a cache file
# strategy that assumes the existence of a file, but can still make the file
# available when its contents are required.
def _storage_attr(self, attr):
if getattr(self, '_file', None) is None:
existence_required.send(sender=self, file=self)...
fn = getattr(self.storage, attr)
return fn(self.name)
@property
def path(self):
return self._storage_attr('path')
Variable | Value |
---|---|
attr | 'url' |
self | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/dispatch/dispatcher.py
in send
Return a list of tuple pairs [(receiver, response), ... ].
"""
if not self.receivers or self.sender_receivers_cache.get(sender) is NO_RECEIVERS:
return []
return [
(receiver, receiver(signal=self, sender=sender, **named))
for receiver in self._live_receivers(sender)...
]
def send_robust(self, sender, **named):
"""
Send signal from sender to all connected receivers catching errors.
Variable | Value |
---|---|
named | {'file': <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg>} |
self | <django.dispatch.dispatcher.Signal object at 0x7f9df72f5940> |
sender | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/django/dispatch/dispatcher.py
in <listcomp>
Return a list of tuple pairs [(receiver, response), ... ].
"""
if not self.receivers or self.sender_receivers_cache.get(sender) is NO_RECEIVERS:
return []
return [
(receiver, receiver(signal=self, sender=sender, **named))
for receiver in self._live_receivers(sender)...
]
def send_robust(self, sender, **named):
"""
Send signal from sender to all connected receivers catching errors.
Variable | Value |
---|---|
.0 | <list_iterator object at 0x7f9de747c710> |
named | {'file': <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg>} |
receiver | <bound method GeneratorRegistry.existence_required_receiver of <imagekit.registry.GeneratorRegistry object at 0x7f9df72f5048>> |
self | <django.dispatch.dispatcher.Signal object at 0x7f9df72f5940> |
sender | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/registry.py
in existence_required_receiver
autodiscover()
return self._generators.keys()
def content_required_receiver(self, sender, file, **kwargs):
self._receive(file, 'on_content_required')
def existence_required_receiver(self, sender, file, **kwargs):
self._receive(file, 'on_existence_required')...
def _receive(self, file, callback):
generator = file.generator
# FIXME: I guess this means you can't register functions?
if generator.__class__ in self._generators.values():
Variable | Value |
---|---|
file | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
kwargs | {'signal': <django.dispatch.dispatcher.Signal object at 0x7f9df72f5940>} |
self | <imagekit.registry.GeneratorRegistry object at 0x7f9df72f5048> |
sender | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/registry.py
in _receive
def _receive(self, file, callback):
generator = file.generator
# FIXME: I guess this means you can't register functions?
if generator.__class__ in self._generators.values():
# Only invoke the strategy method for registered generators.
call_strategy_method(file, callback)...
class SourceGroupRegistry(object):
"""
The source group registry is responsible for listening to source_* signals
on source groups, and relaying them to the image generated file strategies
Variable | Value |
---|---|
callback | 'on_existence_required' |
file | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
generator | <weblog.thumbnail_specs.Thumbnail720x500 object at 0x7f9ded4f0080> |
self | <imagekit.registry.GeneratorRegistry object at 0x7f9df72f5048> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/utils.py
in call_strategy_method
return f
def call_strategy_method(file, method_name):
strategy = getattr(file, 'cachefile_strategy', None)
fn = getattr(strategy, method_name, None)
if fn is not None:
fn(file)...
def get_cache():
try:
from django.core.cache import caches
except ImportError:
Variable | Value |
---|---|
file | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
fn | <bound method JustInTime.on_existence_required of <imagekit.cachefiles.strategies.JustInTime object at 0x7f9ded9f1470>> |
method_name | 'on_existence_required' |
strategy | <imagekit.cachefiles.strategies.JustInTime object at 0x7f9ded9f1470> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/cachefiles/strategies.py
in on_existence_required
class JustInTime(object):
"""
A strategy that ensures the file exists right before it's needed.
"""
def on_existence_required(self, file):
file.generate()...
def on_content_required(self, file):
file.generate()
class Optimistic(object):
Variable | Value |
---|---|
file | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
self | <imagekit.cachefiles.strategies.JustInTime object at 0x7f9ded9f1470> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/cachefiles/__init__.py
in generate
def generate(self, force=False):
"""
Generate the file. If ``force`` is ``True``, the file will be generated
whether the file already exists or not.
"""
if force or getattr(self, '_file', None) is None:
self.cachefile_backend.generate(self, force)...
def _generate(self):
# Generate the file
content = generate(self.generator)
actual_name = self.storage.save(self.name, content)
Variable | Value |
---|---|
force | False |
self | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/cachefiles/backends.py
in generate
"""
The most basic file backend. The storage is consulted to see if the file
exists. Files are generated synchronously.
"""
def generate(self, file, force=False):
self.generate_now(file, force=force)...
def _exists(self, file):
return bool(getattr(file, '_file', None)
or file.storage.exists(file.name))
Variable | Value |
---|---|
file | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
force | False |
self | <imagekit.cachefiles.backends.Simple object at 0x7f9ded9f10f0> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/cachefiles/backends.py
in generate_now
def generate(self, file, force=False):
raise NotImplementedError
def generate_now(self, file, force=False):
if force or self.get_state(file) not in (CacheFileState.GENERATING, CacheFileState.EXISTS):
self.set_state(file, CacheFileState.GENERATING)
file._generate()...
self.set_state(file, CacheFileState.EXISTS)
file.close()
class Simple(CachedFileBackend):
"""
Variable | Value |
---|---|
file | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
force | False |
self | <imagekit.cachefiles.backends.Simple object at 0x7f9ded9f10f0> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/cachefiles/__init__.py
in _generate
"""
if force or getattr(self, '_file', None) is None:
self.cachefile_backend.generate(self, force)
def _generate(self):
# Generate the file
content = generate(self.generator)...
actual_name = self.storage.save(self.name, content)
# We're going to reuse the generated file, so we need to reset the pointer.
content.seek(0)
Variable | Value |
---|---|
self | <ImageCacheFile: CACHE/images/uploads/weblog/2019/06/19/190619_mkh_00-4/e59c5f4ba98f0a554232e1093d3eb524.jpg> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/utils.py
in generate
def generate(generator):
"""
Calls the ``generate()`` method of a generator instance, and then wraps the
result in a Django File object so Django knows how to save it.
"""
content = generator.generate()...
f = File(content)
# The size of the File must be known or Django will try to open a file
# without a name and raise an Exception.
f.size = len(content.read())
# After getting the size reset the file pointer for future reads.
content.seek(0)
Variable | Value |
---|---|
generator | <weblog.thumbnail_specs.Thumbnail720x500 object at 0x7f9ded4f0080> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/imagekit/specs/__init__.py
in generate
try:
img = open_image(self.source)
new_image = process_image(img,
processors=self.processors,
format=self.format,
autoconvert=self.autoconvert,
options=self.options)...
finally:
if closed:
# We need to close the file if it was opened by us
self.source.close()
return new_image
Variable | Value |
---|---|
closed | True |
img | <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048> |
self | <weblog.thumbnail_specs.Thumbnail720x500 object at 0x7f9ded4f0080> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/pilkit/utils.py
in process_image
def process_image(img, processors=None, format=None, autoconvert=True, options=None):
from .processors import ProcessorPipeline
original_format = img.format
# Run the processors
img = ProcessorPipeline(processors or []).process(img)...
format = format or img.format or original_format or 'JPEG'
options = options or {}
return img_to_fobj(img, format, autoconvert, **options)
Variable | Value |
---|---|
ProcessorPipeline | <class 'pilkit.processors.base.ProcessorPipeline'> |
autoconvert | True |
format | 'JPEG' |
img | <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048> |
options | {'progressive': True, 'quality': 82} |
original_format | 'JPEG' |
processors | [<pilkit.processors.resize.SmartResize object at 0x7f9defc7e7f0>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/pilkit/processors/base.py
in process
For example::
processed_image = ProcessorPipeline([ProcessorA(), ProcessorB()]).process(image)
"""
def process(self, img):
for proc in self:
img = proc.process(img)...
return img
class Adjust(object):
"""
Performs color, brightness, contrast, and sharpness enhancements on the
Variable | Value |
---|---|
img | <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048> |
proc | <pilkit.processors.resize.SmartResize object at 0x7f9defc7e7f0> |
self | [<pilkit.processors.resize.SmartResize object at 0x7f9defc7e7f0>] |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/pilkit/processors/resize.py
in process
"""
self.width, self.height = width, height
self.upscale = upscale
def process(self, img):
from .crop import SmartCrop
img = ResizeToCover(self.width, self.height,
upscale=self.upscale).process(img)...
return SmartCrop(self.width, self.height).process(img)
class ResizeCanvas(object):
"""
Resizes the canvas, using the provided background color if the new size is
Variable | Value |
---|---|
SmartCrop | <class 'pilkit.processors.crop.SmartCrop'> |
img | <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048> |
self | <pilkit.processors.resize.SmartResize object at 0x7f9defc7e7f0> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/pilkit/processors/resize.py
in process
def process(self, img):
original_width, original_height = img.size
ratio = max(float(self.width) / original_width,
float(self.height) / original_height)
new_width, new_height = (int(round(original_width * ratio)),
int(round(original_height * ratio)))
img = Resize(new_width, new_height, upscale=self.upscale).process(img)...
return img
class ResizeToFill(object):
"""
Resizes an image, cropping it to the exact specified width and height.
Variable | Value |
---|---|
img | <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048> |
new_height | 500 |
new_width | 726 |
original_height | 1654 |
original_width | 2400 |
ratio | 0.3022974607013301 |
self | <pilkit.processors.resize.ResizeToCover object at 0x7f9dec7a4eb8> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/pilkit/processors/resize.py
in process
"""
self.width = width
self.height = height
self.upscale = upscale
def process(self, img):
if self.upscale or (self.width < img.size[0] and self.height < img.size[1]):
img = img.convert('RGBA')...
img = img.resize((self.width, self.height), Image.ANTIALIAS)
return img
class ResizeToCover(object):
"""
Variable | Value |
---|---|
img | <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048> |
self | <pilkit.processors.resize.Resize object at 0x7f9de78cb438> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/PIL/Image.py
in convert
to "P". Available palettes are WEB or ADAPTIVE.
:param colors: Number of colors to use for the ADAPTIVE palette.
Defaults to 256.
:rtype: :py:class:`~PIL.Image.Image`
:returns: An :py:class:`~PIL.Image.Image` object.
"""
self.load()...
if not mode and self.mode == "P":
# determine default mode
if self.palette:
mode = self.palette.mode
else:
Variable | Value |
---|---|
colors | 256 |
dither | None |
matrix | None |
mode | 'RGBA' |
palette | 0 |
self | <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048> |
/home/nn/.virtualenvs/nn/lib/python3.6/site-packages/PIL/ImageFile.py
in load
if not s: # truncated jpeg
if LOAD_TRUNCATED_IMAGES:
break
else:
raise IOError(
"image file is truncated "
"(%d bytes not processed)" % len(b)...
)
b = b + s
n, err_code = decoder.decode(b)
if n < 0:
break
Variable | Value |
---|---|
args | ('RGB', '') |
b | (b'\x8d\xd1\xdfk\xfa\xc5\x92\xe2!T*\xb7\x1d\xec\xab\x12\xd0\xfa8\xbd\x15?*{' b'\xca\x93\xf4') |
decoder | <ImagingDecoder object at 0x7f9ded525be0> |
decoder_name | 'jpeg' |
err_code | 0 |
extents | (0, 0, 2400, 1654) |
n | 314413 |
offset | 0 |
pixel | None |
prefix | b'' |
read | <bound method JpegImageFile.load_read of <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048>> |
readonly | 0 |
s | b'' |
seek | <built-in method seek of _io.BufferedReader object at 0x7f9de7409678> |
self | <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=2400x1654 at 0x7F9DEC7A4048> |
use_mmap | False |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CSRF_COOKIE | 'ZLXqVfAVfnOVZPCAgCYnGKqqySbwB8s7uZjYJNddXzQYVI37jpRj1f4e8KZGkNF0' |
CSRF_COOKIE_USED | True |
HTTP_ACCEPT | '*/*' |
HTTP_ACCEPT_ENCODING | 'gzip, br' |
HTTP_CDN_LOOP | 'cloudflare' |
HTTP_CF_CONNECTING_IP | '35.175.180.255' |
HTTP_CF_IPCOUNTRY | 'US' |
HTTP_CF_RAY | '86bfe7ab09323af0-IAD' |
HTTP_CF_VISITOR | '{"scheme":"https"}' |
HTTP_CONNECTION | 'close' |
HTTP_HOST | 'nn.najah.edu' |
HTTP_REFERER | 'https://nn.najah.edu/news/Story/2019/06/20/238263/' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '35.175.180.255, 172.70.43.192' |
HTTP_X_FORWARDED_PROTO | 'https' |
HTTP_X_REAL_IP | '172.70.43.192' |
PATH_INFO | '/news/photo/2019/06/20/238263/' |
QUERY_STRING | '' |
RAW_URI | '/news/photo/2019/06/20/238263/' |
REMOTE_ADDR | '' |
REQUEST_METHOD | 'GET' |
SCRIPT_NAME | '' |
SERVER_NAME | 'nn.najah.edu' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/1.0' |
SERVER_SOFTWARE | 'gunicorn/19.9.0' |
gunicorn.socket | <gevent._socket3.socket object, fd=22, family=1, type=2049, proto=0> |
wsgi.errors | <gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7f9decc70be0> |
wsgi.file_wrapper | '' |
wsgi.input | <gunicorn.http.body.Body object at 0x7f9ded3905f8> |
wsgi.multiprocess | True |
wsgi.multithread | True |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
conf.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [('razi', '[email protected]')] |
ADMIN_SHORTCUTS | [{'shortcuts': [{'count': 'weblog.utils.count_posts', 'count_new': 'weblog.utils.count_unpublished_posts', 'has_perms': 'weblog.utils.has_weblog_perms', 'title': 'Posts', 'url_name': 'admin:weblog_post_changelist'}, {'has_perms': 'weblog.utils.has_weblog_category_perms', 'title': 'Categories', 'url_name': 'admin:weblog_category_changelist'}, {'has_perms': 'weblog.utils.has_news_ticker_perms', 'title': 'News Ticker', 'url_name': 'admin:news_ticker_newsitem_changelist'}, {'has_perms': 'weblog.utils.has_featured_news_perms', 'title': 'Featured News', 'url_name': 'admin:featured_news_newsitem_changelist'}, {'has_perms': 'weblog.utils.has_argent_news_perms', 'title': 'Argent News', 'url_name': 'admin:argent_news_newsitem_changelist'}, {'has_perms': 'weblog.utils.has_jobs_perms', 'title': 'Job Opportunities', 'url_name': 'admin:jobs_jobopportunity_changelist'}, {'has_perms': 'weblog.utils.has_ads_perms', 'title': 'Ads', 'url_name': 'admin:ads_ad_changelist'}, {'has_perms': 'weblog.utils.has_admin_perms', 'title': 'Homepage Settings', 'url_name': 'admin:weblog_homepagesettings_change'}, {'has_perms': 'weblog.utils.has_admin_perms', 'title': 'Homepage Categories', 'url_name': 'admin:weblog_homepagecategory_changelist'}, {'has_perms': 'weblog.utils.has_admin_perms', 'title': 'Sidebar Settings', 'url_name': 'admin:weblog_sidebarsettings_change'}, {'has_perms': 'weblog.utils.has_admin_perms', 'title': 'Menu Items', 'url_name': 'admin:weblog_menuitem_changelist'}, {'has_perms': 'weblog.utils.has_admin_perms', 'title': 'Categories Permissions', 'url_name': 'admin:weblog_categorypermission_changelist'}, {'has_perms': 'weblog.utils.has_newsletter_perms', 'title': 'Newsletter', 'url_name': 'admin:newsletter_newsletter_changelist'}, {'has_perms': 'weblog.utils.has_admin_perms', 'title': 'log entries', 'url_name': 'admin:admin_logentry_changelist'}, {'has_perms': 'weblog.utils.has_livestream_perms', 'title': 'LiveStream', 'url_name': 'admin:fb_live_widget_livestream_changelist'}, {'has_perms': 'weblog.utils.has_push_perms', 'title': 'Push', 'url_name': 'admin:push_task_changelist'}, {'count_new': 'weblog.contrib.send_article.utils.count_pending', 'has_perms': 'weblog.utils.has_send_article_perms', 'title': 'Received Articles', 'url_name': 'admin:send_article_article_changelist'}, {'has_perms': 'weblog.utils.has_contacts_directory_perms', 'title': 'Contacts', 'url_name': 'admin:contacts_directory_person_changelist'}, {'has_perms': 'weblog.utils.has_daily_reports_perms', 'title': 'Daily Reports', 'url_name': 'admin:daily_reports_dailyreport_changelist'}], 'title': 'Weblog'}] |
ADMIN_SHORTCUTS_SETTINGS | {'hide_app_list': False, 'open_new_window': False, 'show_on_all_pages': True} |
ADS_DEFAULT_AD_SIZE | '720x150' |
ADS_DEVICES | (('xs', 'Smartphones and Tablets'), ('lg', 'Large devices (Desktops)')) |
ADS_GOOGLE_ADSENSE_CLIENT | 'ca-pub-3714480040469225' |
ADS_VIEWPORTS | {'lg': 'd-none img-fluid d-lg-block', 'xs': 'd-block img-fluid d-lg-none'} |
ADS_ZONES | {'(1) header': {'ad_size': {'lg': '800x95', 'md': '800x95', 'sm': '800x95', 'xl': '800x95', 'xs': '650x95'}, 'name': 'HEADER'}, '(10) content_below': {'ad_size': {'lg': '800x90', 'md': '800x90', 'sm': '800x90', 'xl': '800x90', 'xs': '720x150'}, 'name': '10'}, '(11) sidebar_top': {'ad_size': {'lg': '350x100', 'md': '350x100', 'sm': '350x100', 'xl': '350x100', 'xs': '720x150'}, 'name': '11'}, '(12) sidebar': {'ad_size': {'lg': '350x250', 'md': '350x250', 'sm': '350x250', 'xl': '350x250', 'xs': '720x150'}, 'name': '12'}, '(13) sidebar_bottom': {'ad_size': {'lg': '350x100', 'md': '350x100', 'sm': '350x100', 'xl': '350x100', 'xs': '720x150'}, 'name': '13'}, '(2) homepage_featured_first (above featured)': {'ad_size': {'lg': '550x90', 'md': '550x90', 'sm': '550x90', 'xl': '550x90', 'xs': '720x150'}, 'name': '2 (above featured)'}, '(2) homepage_featured_first (below featured)': {'ad_size': {'lg': '550x90', 'md': '550x90', 'sm': '550x90', 'xl': '550x90', 'xs': '720x150'}, 'name': '2 (below featured)'}, '(2.5) homepage_featured_nnu': {'ad_size': {'lg': '320x120', 'md': '320x120', 'sm': '320x120', 'xl': '320x120', 'xs': '720x150'}, 'name': '2.5 (nnu)'}, '(3) homepage_featured_second (above featured)': {'ad_size': {'lg': '550x90', 'md': '550x90', 'sm': '550x90', 'xl': '550x90', 'xs': '720x150'}, 'name': '3 (above ' 'featured)'}, '(3) homepage_featured_second (below featured)': {'ad_size': {'lg': '550x90', 'md': '550x90', 'sm': '550x90', 'xl': '550x90', 'xs': '720x150'}, 'name': '3 (below ' 'featured)'}, '(4) homepage_sidebar': {'ad_size': {'lg': '370x215', 'md': '370x215', 'sm': '370x215', 'xl': '370x215', 'xs': '720x150'}, 'name': 'FEATURED NEWS'}, '(4) homepage_sidebar (1)': {'ad_size': {'lg': '100x440', 'md': '100x440', 'sm': '100x440', 'xl': '100x440', 'xs': '720x150'}, 'name': '4 (first)'}, '(4) homepage_sidebar (2)': {'ad_size': {'lg': '100x440', 'md': '100x440', 'sm': '100x440', 'xl': '100x440', 'xs': '720x150'}, 'name': '4 (second)'}, '(4) homepage_sidebar (3)': {'ad_size': {'lg': '100x440', 'md': '100x440', 'sm': '100x440', 'xl': '100x440', 'xs': '720x150'}, 'name': '4 (third)'}, '(4) homepage_sidebar (4)': {'ad_size': {'lg': '100x440', 'md': '100x440', 'sm': '100x440', 'xl': '100x440', 'xs': '720x150'}, 'name': '4 (forth)'}, '(4.5) homepage_c2_1_1': {'ad_size': {'lg': '320x230', 'md': '320x230', 'sm': '320x230', 'xl': '320x230', 'xs': '720x150'}, 'name': 'HOMEPAGE 3'}, '(5) homepage_below_tabs_second': {'ad_size': {'lg': '800x90', 'md': '800x90', 'sm': '800x90', 'xl': '800x90', 'xs': '720x150'}, 'name': '5'}, '(6) homepage_sidebar_top_first': {'ad_size': {'lg': '350x250', 'md': '350x250', 'sm': '350x250', 'xl': '350x250', 'xs': '720x150'}, 'name': '6'}, '(7) homepage_sidebar_top_second': {'ad_size': {'lg': '350x100', 'md': '350x100', 'sm': '350x100', 'xl': '350x100', 'xs': '720x150'}, 'name': '7'}, '(8) homepage_sidebar_bottom': {'ad_size': {'lg': '350x100', 'md': '350x100', 'sm': '350x100', 'xl': '350x100', 'xs': '720x150'}, 'name': '8'}, '(9) content_top': {'ad_size': {'lg': '800x90', 'md': '800x90', 'sm': '800x90', 'xl': '800x90', 'xs': '720x150'}, 'name': '9'}} |
ALLOWED_HOSTS | ['nn.najah.edu', 'nn.ps', 'cf.nn.najah.edu', '127.0.0.1'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'weblog_profiles.User' |
AWS_ACCESS_KEY_ID | '********************' |
AWS_DEFAULT_ACL | None |
AWS_IS_GZIPPED | True |
AWS_S3_CUSTOM_DOMAIN | 'assets.nn.najah.edu' |
AWS_S3_OBJECT_PARAMETERS | {'CacheControl': 'max-age=31536000'} |
AWS_SECRET_ACCESS_KEY | '********************' |
AWS_STORAGE_BUCKET_NAME | 'assets.nn.ps' |
BASE_DIR | '/var/www/nn/src' |
BLUE_ENDPOINT | 'http://nmc.demo.ps/api/callback' |
CACHALOT_CACHE | 'cachalot' |
CACHALOT_CACHE_RANDOM | False |
CACHALOT_ONLY_CACHABLE_TABLES | frozenset({'ads_ad', 'ads_adimage', 'argent_news_newsitem', 'django_flatpage', 'django_flatpage_sites', 'featured_news_newsitem', 'flatpages_extend_flatpageextend', 'news_ticker_newsitem', 'ramadan_ramadancategory', 'videos_library_video', 'weblog_author', 'weblog_authorsociallink', 'weblog_category', 'weblog_galleryphoto', 'weblog_gallerypost', 'weblog_homepagecategory', 'weblog_homepagesettings', 'weblog_htmlpost', 'weblog_menuitem', 'weblog_post', 'weblog_post_authors', 'weblog_post_co_authors', 'weblog_sidebarcategory', 'weblog_sidebarsettings', 'weblog_videopost'}) |
CACHALOT_TIMEOUT | None |
CACHES | {'cachalot': {'BACKEND': 'django_redis.cache.RedisCache', 'KEY_PREFIX': '********************', 'LOCATION': 'redis://127.0.0.1:6379/0', 'TIMEOUT': 2592000}, 'default': {'BACKEND': 'django_redis.cache.RedisCache', 'KEY_PREFIX': '********************', 'LOCATION': 'redis://127.0.0.1:6379/0', 'TIMEOUT': 2592000}, 'imagekit': {'BACKEND': 'django_redis.cache.RedisCache', 'KEY_PREFIX': '********************', 'LOCATION': 'redis://127.0.0.1:6379/0', 'TIMEOUT': 2592000}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CAPTCHA_BACKGROUND_COLOR | '#F0F0F0' |
CAPTCHA_FOREGROUND_COLOR | '#be1e2d' |
CAPTCHA_IMAGE_SIZE | (100, 30) |
CAPTCHA_LETTER_ROTATION | (-20, 20) |
CAPTCHA_NOISE_FUNCTIONS | None |
CELERY_BROKER_URL | 'amqp://localhost/nn' |
CELERY_ENABLE_UTC | True |
CKEDITOR_CONFIGS | {'default': {'autoGrow_onStartup': True, 'contentsCss': '/static/weblog/ckeditor.css', 'extraPlugins': 'div,autolink,autoembed,embed,autogrow,image2,widget,lineutils,clipboard,dialog,dialogui,elementspath', 'height': 300, 'toolbar': 'weblog', 'toolbar_weblog': [{'items': ['Source', '-', 'Preview', 'Print', '-', 'Templates'], 'name': 'document'}, {'items': ['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo'], 'name': 'clipboard'}, {'items': ['Find', 'Replace', '-', 'SelectAll'], 'name': 'editing'}, '/', {'items': ['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-', 'RemoveFormat'], 'name': 'basicstyles'}, {'items': ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote', 'CreateDiv', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', '-', 'BidiLtr', 'BidiRtl'], 'name': 'paragraph'}, {'items': ['Link', 'Unlink', 'Anchor'], 'name': 'links'}, {'items': ['Image', 'Embed', 'Flash', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak', 'Iframe'], 'name': 'insert'}, {'items': ['Styles', 'Format'], 'name': 'styles'}, {'items': ['TextColor', 'BGColor'], 'name': 'colors'}, {'items': ['Maximize', 'ShowBlocks'], 'name': 'tools'}], 'width': 800}, 'simple': {'toolbar': 'Basic'}} |
CKEDITOR_IMAGE_BACKEND | 'pillow' |
CKEDITOR_UPLOAD_PATH | 'uploads/' |
CONCURRENCY_CALLBACK | 'concurrency.views.callback' |
CONCURRENCY_ENABLED | True |
CONCURRENCY_FIELD_SIGNER | 'concurrency.forms.VersionFieldSigner' |
CONCURRENCY_HANDLER409 | 'weblog.views.concurrency.conflict' |
CONCURRENCY_MANUAL_TRIGGERS | False |
CONCURRENCY_POLICY | 2 |
CONCURRENCY_VERSION_FIELD_REQUIRED | True |
COUNTRIES_FIRST_REPEAT | True |
COUNTRIES_OVERRIDE | {'IL': None, 'PS': 'فلسطين'} |
CRISPY_TEMPLATE_PACK | 'bootstrap3' |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | 'Lax' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.mysql', 'HOST': '127.0.0.1', 'NAME': 'nn', 'OPTIONS': {'charset': 'utf8mb4', 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'nn2'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_CONTENT_TYPE | 'text/html' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'An-Najah News <[email protected]>' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
DJANGO_INFOPUSH_APP_ICON_URLS | 'weblog/img/logov2-192x192.png' |
DJANGO_INFOPUSH_DEFAULT_ICON_URL | '/static/weblog/img/logov2-192x192.png' |
DJANGO_INFOPUSH_VAPID_ADMIN_EMAIL | '********************' |
DJANGO_INFOPUSH_VAPID_PRIVATE_KEY | '********************' |
DJANGO_INFOPUSH_VAPID_PUBLIC_KEY | '********************' |
DJANGO_MYSQL_REWRITE_QUERIES | True |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_CONFIG | {'EMAIL_BACKEND': 'django.core.mail.backends.smtp.EmailBackend', 'EMAIL_FILE_PATH': '', 'EMAIL_HOST': 'smtp.gmail.com', 'EMAIL_HOST_PASSWORD': '********************', 'EMAIL_HOST_USER': '[email protected]', 'EMAIL_PORT': 587, 'EMAIL_USE_TLS': True} |
EMAIL_FILE_PATH | '' |
EMAIL_HOST | 'mail.nn.ps' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | 'noreply' |
EMAIL_PORT | 587 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | True |
FILE_CHARSET | 'utf-8' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | 420 |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | 'conf.formats' |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
HAYSTACK_CONNECTIONS | {'default': {'ENGINE': 'conf.nn_haystack.backends.elasticsearch2_backend.Elasticsearch2SearchEngine', 'INDEX_NAME': 'nn', 'URL': 'http://127.0.0.1:9200/'}} |
HITCOUNT_KEEP_HIT_IN_DATABASE | {'days': 30} |
HTML_MINIFY | True |
IGNORABLE_404_URLS | [] |
IMAGEKIT_CACHEFILE_DIR | 'CACHE/images' |
IMAGEKIT_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.hash' |
IMAGEKIT_CACHE_BACKEND | 'imagekit' |
IMAGEKIT_CACHE_PREFIX | 'imagekit:' |
IMAGEKIT_CACHE_TIMEOUT | 2592000 |
IMAGEKIT_DEFAULT_CACHEFILE_BACKEND | 'imagekit.cachefiles.backends.Simple' |
IMAGEKIT_DEFAULT_CACHEFILE_STRATEGY | 'imagekit.cachefiles.strategies.JustInTime' |
IMAGEKIT_DEFAULT_FILE_STORAGE | 'conf.storage.CustomS3Boto3Storage' |
IMAGEKIT_SPEC_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.source_name_as_path' |
IMAGEKIT_USE_MEMCACHED_SAFE_CACHE_KEY | '********************' |
IMPORT_EXPORT_USE_TRANSACTIONS | True |
INSTALLED_APPS | ['dal', 'dal_select2', 'dal_select2_queryset_sequence', 'admin_rtl_fix', 'admin_shortcuts', 'filebrowser', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'collectfast', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.sitemaps', 'django.contrib.humanize', 'django.contrib.flatpages', 'captcha', 'django_countries', 'conf', 'weblog', 'weblog.contrib.argent_news', 'weblog.contrib.news_ticker', 'weblog.contrib.nnu_news', 'weblog.contrib.forecast', 'weblog.contrib.currency_converter', 'weblog.contrib.polls', 'weblog.contrib.newsletter', 'weblog.contrib.jobs', 'weblog.contrib.archive', 'weblog.contrib.featured_news', 'weblog.contrib.fb_live_widget', 'weblog.contrib.flatpages_extend', 'weblog.contrib.send_article', 'weblog.contrib.contacts_directory', 'weblog.contrib.daily_reports', 'weblog.contrib.covid19', 'weblog.contrib.ramadan', 'weblog.contrib.sherin', 'django_comments', 'endorsement2020', 'weblog_profiles', 'videos_library', 'najah_fm', 'tawjihi_results', 'prisoners_messages', 'http2_push', 'versatileimagefield', 'django_extensions', 'django_mysql', 'polymorphic', 'haystack', 'sekizai', 'crispy_forms', 'imagekit', 'sorl.thumbnail', 'taggit', 'mptt', 'sortedm2m', 'adminsortable2', 'django_social_share', 'sitetree', 'el_pagination', 'bootstrap_pagination', 'concurrency', 'django_summernote', 'ckeditor', 'ckeditor_uploader', 'embed_video', 'ads', 'admin_row_actions', 'hitcount', 'solo', 'cachalot', 'django_user_agents', 'import_export', 'smart_selects', 'django_inlinecss', 'post_office', 'robots', 'django_thumbor', 'django_js_reverse', 'reversion', 'django_admin_listfilter_dropdown', 'logentry_admin', 'storages', 'webpack_loader', 'rest_framework', 'rest_framework.authtoken', 'django_filters', 'commonstuff', 'push'] |
INTERNAL_IPS | [] |
IS_STAGING | False |
JS_REVERSE_INCLUDE_ONLY_NAMESPACES | ['weblog', 'ads'] |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'ar' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LOCALE_PATHS | [] |
LOGGING | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MEDIA_ROOT | '/var/www/nn/public/media/' |
MEDIA_URL | 'https://nn.najah.edu/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MESSAGE_TAGS | {40: 'danger'} |
MIDDLEWARE | ['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'weblog.middleware.WeblogRequestCacheMiddleware', 'weblog.middleware.NoIndexMiddleware', 'concurrency.middleware.ConcurrencyMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django_user_agents.middleware.UserAgentMiddleware', 'http2_push.middleware.AddLinkHeaderMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NAJAH_FM_CLIENT_ID | 'gi3TTq7WE8J3QwqBwG5PaY639Ufl7RLH' |
NUMBER_GROUPING | 0 |
PARENT_DIR | '/var/www/nn' |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
POST_OFFICE | {'CONTEXT_FIELD_CLASS': 'picklefield.fields.PickledObjectField'} |
PREPEND_WWW | False |
RAMADAN_PLACEHOLDER_CHOICES | (('featured', 'Featured'), ('top_fullwidth', 'Top Area (Full Width)'), ('top_first', 'المنطقة العلوية - العمود الأول'), ('top_second', 'المنطقة العلوية - العمود الثاني'), ('main1', 'المنطقة الرئيسية'), ('sidebar1', 'الشريط الجانبي'), ('4cols', 'Full Width (4 Columns)'), ('3cols', 'Full Width (3 Columns)'), ('3cols_sidebar', 'Full Width (3 Columns - Sidebar)'), ('main2', 'المنطقة الرئيسية'), ('sidebar2', 'الشريط الجانبي')) |
REDACTOR_OPTIONS | {'lang': 'ar', 'plugins': ['uploadcare', 'video'], 'uploadcare': {'crop': 'free', 'publicKey': '********************', 'tabs': 'all'}} |
REST_FRAMEWORK | {'DEFAULT_AUTHENTICATION_CLASSES': ['rest_framework.authentication.TokenAuthentication', 'rest_framework.authentication.SessionAuthentication'], 'DEFAULT_FILTER_BACKENDS': ['django_filters.rest_framework.DjangoFilterBackend'], 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination', 'DEFAULT_PERMISSION_CLASSES': ['rest_framework.permissions.IsAuthenticated'], 'DEFAULT_THROTTLE_CLASSES': ['rest_framework.throttling.AnonRateThrottle', 'rest_framework.throttling.UserRateThrottle'], 'DEFAULT_THROTTLE_RATES': {'anon': '1/day', 'user': '100/minute'}, 'DEFAULT_VERSIONING_CLASS': 'rest_framework.versioning.NamespaceVersioning', 'PAGE_SIZE': 20} |
ROBOTS_SITEMAP_URLS | ['https://nn.najah.edu/sitemap.xml'] |
ROOT_URLCONF | 'conf.urls' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | False |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | '[email protected]' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | 'nn.najah.edu' |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'conf.settings' |
SHERIN_PLACEHOLDER_CHOICES | (('featured', 'Featured'), ('top_first', 'المنطقة العلوية - العمود الأول'), ('top_second', 'المنطقة العلوية - العمود الثاني'), ('main1', 'المنطقة الرئيسية'), ('sidebar1', 'الشريط الجانبي'), ('4cols', 'Full Width (4 Columns)'), ('3cols', 'Full Width (3 Columns)'), ('3cols_sidebar', 'Full Width (3 Columns - Sidebar)'), ('main2', 'المنطقة الرئيسية'), ('sidebar2', 'الشريط الجانبي')) |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | ['mysql.E001'] |
SITE_ID | 1 |
STATICFILES_DIRS | [] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/var/www/nn/public/static/' |
STATIC_URL | '/static/' |
SUMMERNOTE_CONFIG | {'base_css': ('//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css',), 'base_js': ('//code.jquery.com/jquery-3.3.1.min.js', '//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js'), 'default_css': ('summernote/summernote.css', 'summernote/django_summernote.css'), 'default_js': ('summernote/jquery.ui.widget.js', 'summernote/jquery.iframe-transport.js', 'summernote/jquery.fileupload.js', 'summernote/summernote.min.js', 'summernote/ResizeSensor.js'), 'direction': 'rtl', 'js': ('/static/summernote/uploadcare.js',), 'toolbar': [['style', ['style']], ['font', ['bold', 'italic', 'underline', 'superscript', 'subscript', 'strikethrough', 'clear']], ['fontname', ['fontname']], ['fontsize', ['fontsize']], ['color', ['color']], ['para', ['ul', 'ol', 'paragraph']], ['height', ['height']], ['table', ['table']], ['insert', ['link', 'picture', 'video', 'uploadcare', 'hr']], ['view', ['fullscreen', 'codeview']], ['help', ['help']]], 'uploadcare': {'crop': 'free', 'multiple': True, 'publicKey': '********************', 'tabs': 'all', 'tooltipText': 'Upload files or video or something'}, 'width': '100%'} |
TAWJIHI_RESULTS_ACTIVE | True |
TAWJIHI_RESULTS_YEAR | 2021 |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['conf/templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'sekizai.context_processors.sekizai', 'weblog.context_processors.footer_categories', 'weblog.context_processors.homepage_settings', 'weblog.context_processors.gapi_access_token'], 'debug': True}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
THUMBNAIL_DEBUG | False |
THUMBNAIL_FILTER_WIDTH | 720 |
THUMBNAIL_HIGH_RESOLUTION | True |
THUMBNAIL_PADDING | True |
THUMBNAIL_PRESERVE_FORMAT | True |
THUMBNAIL_QUALITY | 85 |
THUMBOR_ALIASES | {'100x100': {'height': 100, 'smart': True, 'width': 100}, '400x225': {'height': 225, 'smart': True, 'width': 400}, '400x300': {'height': 300, 'smart': True, 'width': 400}, '425x300': {'height': 600, 'smart': True, 'width': 850}, '450x300': {'height': 300, 'smart': True, 'width': 450}, '480x165': {'height': 165, 'smart': True, 'width': 480}, '50x50': {'height': 50, 'smart': True, 'width': 50}, '700x700': {'height': 700, 'smart': True, 'width': 800}, '720x500': {'height': 600, 'smart': True, 'width': 900}, '800x400': {'height': 396, 'smart': True, 'width': 800}, '800x482': {'height': 482, 'smart': True, 'width': 800}, 'infographic': {'height': 0, 'width': 400}} |
THUMBOR_MEDIA_URL | 'https://nn.najah.edu/media' |
THUMBOR_SECURITY_KEY | '********************' |
THUMBOR_SERVER | 'https://m1.nn.najah.edu' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'Asia/Gaza' |
USER_AGENTS_CACHE | 'default' |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
VIDEOS_LIBRARY_ACCESS_TOKEN | '********************' |
VIDEOS_LIBRARY_CLIENT_ID | '24a5c3355c3580217ee62fd9a70fa55e53cfd14c' |
VIDEOS_LIBRARY_CLIENT_SECRET | '********************' |
WATERMARK_FORCE | 'watermark text' |
WATERMARK_MIN_SIZE | 150 |
WEBLOG_ARCHIVE_DAYS | -30 |
WEBLOG_ARCHIVE_ENABLED | True |
WEBLOG_ARCHIVE_PROTOCOL | 'https' |
WEBLOG_ARCHIVE_REDIRECT | False |
WEBLOG_ARCHIVE_SITE_ID | 2 |
WEBLOG_AUTHOR_TYPE_CHOICES | (('REPORTER', 'Reporter'), ('WRITER', 'Writer'), ('EDITOR', 'Editor')) |
WEBLOG_CATEGORY_COLOR_CHOICES | (('blue', 'أزرق'), ('indigo', 'نيلي'), ('purple', 'بنفسجي'), ('pink', 'زهري'), ('red', 'أحمر'), ('orange', 'برتقالي'), ('yellow', 'أصفر'), ('green', 'أخضر'), ('teal', 'أزرق مخضر'), ('cyan', 'أزرق سماوي'), ('gray', 'رمادي'), ('gray-dark', 'رمادي غامق')) |
WEBLOG_CATEGORY_STYLE_CHOICES | (('full_simple', 'Simple'), ('full_complex', 'Complex'), ('full_ramadan_main', 'Ramadan (Main Page)'), ('full_ramadan_page', 'رمضان')) |
WEBLOG_CATEGORY_STYLE_DESKTOPS_CHOICES | (('1col_of_minimal_content', 'One Column [Minimal]'), ('1col_carousel_simple', '1 Column Slideshow'), ('1col_carousel_simple_style2', '1 Column Slideshow (style2)'), ('1col_of_featured_wide_thumbs', 'One Column [Featured Wide Thumbs]'), ('1col_of_media', 'عمود واحد'), ('1col_of_media-3-9', 'One Column [Media 3-9]'), ('1col_of_thumbs', 'عمود واحد من الصور المصغرة'), ('1col_of_thumbs_tall', 'One Column [Tall Thumbs]'), ('1col-featured-and-1col-media', 'عمود يحتوي على خبر كبير + عمود يحتوي على باقي الأخبار'), ('1col-featured-no-teaser-and-1col-media', '1 Column Featured (No Teaser) + 1 Column Media'), ('1featured_with_teaser_plus_media', 'خبر كبير + باقي الأخبار'), ('1featured_without_teaser_plus_media', '1 Featured post without teaser + Media'), ('2cols_of_media', 'Tow Columns [Media]'), ('2cols_of_thumbs', 'عمودين من الصور المصغرة'), ('2cols_of_wide_thumbs', 'عمودين من الصور المصغرة العريضة'), ('2cols_of_modern_thumbs', 'Two columns of Modern Thumbnails'), ('3cols_of_media', 'Three Columns [Media]'), ('3cols_of_media_rounded', 'Three Columns [Rounded Media]'), ('3cols_of_thumbs', 'Three columns of Thumbnails'), ('3cols_of_modern_thumbs', 'عمودين من الصور المصغرة 2'), ('xcols_of_thumbs', 'X columns of Thumbnails'), ('4cols_of_media_rounded', 'Four Columns [Rounded Media]'), ('xcols_of_large_thumbs', 'X columns of Large Thumbnails'), ('xcols_of_modern_thumbs', 'X columns of Modern Thumbnails'), ('xcols_of_wide_thumbs', 'X columns of Wide Thumbnails'), ('carousel', 'عرض الشرائح (سلايدشو)'), ('carousel_style2', 'Carousel (Style 2)'), ('infographic', 'إنفوجرافيك'), ('1thumb_and_simple', 'صورة مصغرة + عناوين'), ('1media_and_simple', 'خبر مع صورة + عناوين'), ('featured_block', 'Featured Block'), ('featured_block_3items', 'Featured Block (3 Items)'), ('featured_block_3items_style2', 'Featured Block (3 Items - Style 2)'), ('featured_block_4items', 'Featured Block (4 Items)'), ('featured_block_4items_reversed', 'Featured Block (4 Items - Reversed)'), ('featured_block_6items', 'Featured Block (6 Items)'), ('modern-1col-featured-and-1col-media', '[MODERN] 1 Column Featured + 1 Column Media'), ('1col_of_thumbs_nnu', 'An-Najah N. University News'), ('custom_annajah_opinion', 'An-Najah Opinion'), ('nnu_featured', 'An-Najah "Featured"')) |
WEBLOG_CATEGORY_STYLE_MOBILES_CHOICES | (('1col_of_minimal_content', 'One Column [Minimal]'), ('1col_of_media', 'عمود واحد'), ('1col_of_thumbs', 'عمود واحد من الصور المصغرة'), ('2cols_of_thumbs', 'عمودين من الصور المصغرة'), ('mobile_2thumb_and_simple', '2 Thumbnail + Titles'), ('mobile_1thumb_and_simple', 'صورة مصغرة + عناوين'), ('mobile_1media_and_simple', 'خبر مع صورة + عناوين'), ('carousel', 'عرض الشرائح (سلايدشو)'), ('infographic', 'إنفوجرافيك'), ('custom_annajah_opinion', 'An-Najah Opinion')) |
WEBLOG_CATEGORY_THEME_CHOICES | (('blue', 'أزرق'), ('indigo', 'نيلي'), ('purple', 'بنفسجي'), ('pink', 'زهري'), ('red', 'أحمر'), ('orange', 'برتقالي'), ('yellow', 'أصفر'), ('green', 'أخضر'), ('teal', 'أزرق مخضر'), ('cyan', 'أزرق سماوي'), ('gray', 'رمادي'), ('gray-dark', 'رمادي غامق'), ('primary', 'Primary'), ('secondary', 'Secondary'), ('success', 'Success'), ('danger', 'Danger'), ('warning', 'Warning'), ('info', 'Info'), ('light', 'Light'), ('dark', 'Dark')) |
WEBLOG_CURRENCY_CONVERTER_CACHE_TIMEOUT | 600 |
WEBLOG_CURRENCY_CONVERTER_CURRENCYLAYER_API_KEY | '********************' |
WEBLOG_CURRENCY_CONVERTER_CURRENCYLAYER_CURRENCIES | (('JOD', 'دينار أردني'), ('USD', 'دولار'), ('EUR', 'يورو'), ('EGP', 'جنيه مصري')) |
WEBLOG_CURRENCY_CONVERTER_CURRENCYLAYER_FLIP_RESULTS | True |
WEBLOG_CURRENCY_CONVERTER_CURRENCYLAYER_SOURCE | 'ILS' |
WEBLOG_ENTRY_BASE_MODEL | 'weblog.models.entry_base.AbstractEntry' |
WEBLOG_ENTRY_STATUS_CHOICES | ((0, 'مسودة'), (1, 'مخفي'), (2, 'منشور')) |
WEBLOG_ENTRY_STATUS_DRAFT | 0 |
WEBLOG_ENTRY_STATUS_HIDDEN | 1 |
WEBLOG_ENTRY_STATUS_PUBLISHED | 2 |
WEBLOG_FEATURED_POSTS_COUNT_CHOICES | [[0, '0'], [1, '1'], [2, '2'], [3, '3'], [4, '4'], [5, '5'], [6, '6'], [7, '7'], [8, '8'], [9, '9'], [10, '10'], [11, '11'], [12, '12'], [13, '13'], [14, '14'], [15, '15'], [16, '16'], [17, '17'], [18, '18'], [19, '19'], [20, '20'], [21, '21'], [22, '22'], [23, '23'], [24, '24'], [25, '25'], [26, '26'], [27, '27'], [28, '28'], [29, '29'], [30, '30']] |
WEBLOG_FEATURED_POSTS_COUNT_DEFAULT | 3 |
WEBLOG_FOOTER_CATEGORIES | ('lngh-bls',) |
WEBLOG_FORECAST_CACHE_TIMEOUT | 3600 |
WEBLOG_FORECAST_FORECASTIO_API | '********************' |
WEBLOG_FORECAST_FORECASTIO_LANG | 'ar' |
WEBLOG_FORECAST_FORECASTIO_LATITUDE | '32.223895' |
WEBLOG_FORECAST_FORECASTIO_LONGITUE | '35.243711' |
WEBLOG_FORECAST_FORECASTIO_UNITS | 'si' |
WEBLOG_FORECAST_YAHOO_UNITS | 'c' |
WEBLOG_FORECAST_YAHOO_WOEID | '1937300' |
WEBLOG_HOMEPAGE_FEATURED_POSTS_COUNT | {'weblog/homepage/modern_1post_style1.html': 1, 'weblog/homepage/modern_1post_style2.html': 1, 'weblog/homepage/modern_2posts.html': 2, 'weblog/homepage/modern_3posts.html': 3, 'weblog/homepage/modern_4posts.html': 4, 'weblog/homepage/modern_5posts.html': 5, 'weblog/homepage/modern_5posts_new.html': 5, 'weblog/homepage/modern_old_3posts.html': 3} |
WEBLOG_HOMEPAGE_FEATURED_POSTS_COUNT_DEFAULT | 5 |
WEBLOG_HOMEPAGE_PLACEHOLDER_CHOICES | (('nnu_featured', 'An-Najah "Featured"'), ('top', 'أعلى الصفحة (كامل عرض الصفحة)'), ('main_0', 'Main Aria (0)'), ('sidebar_0', 'Sidebar (0)'), ('dark_blocks1', 'Dark Blocks (1)'), ('top_col_1', 'Top Area (Col 1)'), ('top_col_2', 'Top Area (Col 2)'), ('top_col_3', 'Top Area (Col 3)'), ('top_col_4', 'Top Area (Col 4)'), ('top_col_5', 'Top Area (Col 5)'), ('top_col_6', 'Top Area (Col 6)'), ('top_col_7', 'Top Area (Col 7)'), ('sidebar_featured', 'Sidebar (Featured)'), ('c2_c1_c1_columns_1', '2-1-1 (1)'), ('fullwidth_1', 'Full Width (1)'), ('main_1', 'Main Aria (1)'), ('sidebar_1', 'Sidebar (1)'), ('equal_columns_1', 'Equal Columns (1)'), ('fullwidth_2', 'Full Width (2)'), ('main_2', 'Main Aria (2)'), ('sidebar_2', 'Sidebar (2)'), ('equal_columns_1', 'Equal Columns (2)'), ('dark_blocks_3', 'Dark Blocks (3)'), ('fullwidth_3', 'Full Width (3)'), ('main_3', 'Main Aria (3)'), ('sidebar_3', 'Sidebar (3)'), ('equal_columns_3', 'Equal Columns (3)'), ('fullwidth_4', 'Full Width (4)'), ('main_4', 'Main Aria (4)'), ('sidebar_4', 'Sidebar (4)'), ('equal_columns_4', 'Equal Columns (4)'), ('fullwidth_5', 'Full Width (5)'), ('main_5', 'Main Aria (5)'), ('sidebar_5', 'Sidebar (5)'), ('equal_columns_5', 'Equal Columns (5)'), ('fullwidth_6', 'Full Width (6)'), ('main_6', 'Main Aria (6)'), ('sidebar_6', 'Sidebar (6)'), ('equal_columns_6', 'Equal Columns (6)'), ('footer_blocks', 'Footer Blocks')) |
WEBLOG_HOMEPAGE_TEMPLATE_CHOICES | (('weblog/homepage/modern_1post_style1.html', '1 Post (Style 1)'), ('weblog/homepage/modern_1post_style2.html', '1 Post (Style 2)'), ('weblog/homepage/modern_2posts.html', '2 Posts'), ('weblog/homepage/modern_3posts.html', '3 Posts'), ('weblog/homepage/modern_old_3posts.html', '3 Posts (Old style)'), ('weblog/homepage/modern_4posts.html', '4 Posts'), ('weblog/homepage/modern_5posts.html', '5 Posts (Default)'), ('weblog/homepage/modern_5posts_new.html', '5 Posts (New Design)')) |
WEBLOG_HOMEPAGE_TEMPLATE_DEFAULT | 'weblog/homepage/modern_5posts.html' |
WEBLOG_MARKDOWN_EXTENSIONS | [] |
WEBLOG_MARKUP_LANGUAGE | 'html' |
WEBLOG_POST_WEIGHT | ((0, '0'), (1, '1'), (2, '2'), (3, '3'), (4, '4'), (5, '5')) |
WEBLOG_PREVIEW_MAX_WORDS | 25 |
WEBLOG_PREVIEW_MORE_STRING | ' ...' |
WEBLOG_PREVIEW_SPLITTERS | ['<!-- more -->', '<!--more-->'] |
WEBLOG_PROTOCOL | 'https' |
WEBLOG_RESTRUCTUREDTEXT_SETTINGS | {} |
WEBLOG_SIDEBAR_FEATURED_POSTS_COUNT | 7 |
WEBLOG_SITE_ID | 1 |
WEBLOG_SOCIAL_LINK_TYPE_CHOICES | (('facebook', 'فيسبوك'), ('twitter', 'تويتر'), ('linkedin', 'لنكدإن'), ('google', 'جوجل+')) |
WEBLOG_UNFEATURED_POSTS_COUNT_CHOICES | [[0, '0'], [1, '1'], [2, '2'], [3, '3'], [4, '4'], [5, '5'], [6, '6'], [7, '7'], [8, '8'], [9, '9'], [10, '10'], [11, '11'], [12, '12'], [13, '13'], [14, '14'], [15, '15'], [16, '16'], [17, '17'], [18, '18'], [19, '19'], [20, '20'], [21, '21'], [22, '22'], [23, '23'], [24, '24'], [25, '25'], [26, '26'], [27, '27'], [28, '28'], [29, '29'], [30, '30']] |
WEBLOG_UNFEATURED_POSTS_COUNT_DEFAULT | 0 |
WEBLOG_UPLOAD_TO | 'uploads/weblog' |
WEBLOG_URL_SHORTENER_BACKEND | 'weblog.url_shortener.backends.default.DefaultBackend' |
WEBPACK_LOADER | {'DEFAULT': {'BUNDLE_DIR_NAME': '', 'CACHE': True, 'IGNORE': ['.+\\.hot-update.js', '.+\\.map'], 'POLL_INTERVAL': 0.1, 'STATS_FILE': '/var/www/nn/src/conf/static/webpack-stats.json', 'TIMEOUT': None}} |
WSGI_APPLICATION | 'conf.wsgi.application' |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
YEAR_MONTH_FORMAT | 'F Y' |
You're seeing this error because you have DEBUG = True
in your
Django settings file. Change that to False
, and Django will
display a standard page generated by the handler for this status code.