'NoneType' object has no attribute 'node'
Request Method: | GET |
---|---|
Request URL: | https://ida.hr/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/ |
Django Version: | 1.11.29 |
Exception Type: | AttributeError |
Exception Value: | 'NoneType' object has no attribute 'node' |
Exception Location: | /home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_link/models.py in get_link, line 143 |
Python Executable: | /usr/local/bin/uwsgi |
Python Version: | 3.6.9 |
Python Path: | ['.', '', '/home/ubuntu/virtualenvs/ida/lib/python36.zip', '/home/ubuntu/virtualenvs/ida/lib/python3.6', '/home/ubuntu/virtualenvs/ida/lib/python3.6/lib-dynload', '/usr/lib/python3.6', '/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages', '/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/odf', '/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/odf', '/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/odf', '/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/odf', '/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/odf', '/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/odf', '/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/odf'] |
Server time: | Čet, 28 Ožu. 2024 19:20:47 +0100 |
In template /home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_text_ckeditor/templates/cms/plugins/render_plugin_preview.html
, error at line 1
1 | {% load djangocms_text_ckeditor_tags %}{% render_plugin_preview plugin %} |
---|
/home/ubuntu/virtualenvs/ida/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, assigned=available_attrs(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 | AttributeError("'NoneType' object has no attribute 'node'",) |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fd2bf5bcf98>> |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/core/handlers/base.py
in _get_response
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)
except Exception as e:
response = self.process_exception_by_middleware(e, request)...
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
view_name = callback.__name__
else: # CBV
Variable | Value |
---|---|
callback | <function cms_perms.<locals>.inner at 0x7fd2bae630d0> |
callback_args | () |
callback_kwargs | {'post_id': '124', 'post_slug': 'tehnicki-sastanak-partnera-u-projektu-corin'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fd2bf26b160>> |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
resolver | <RegexURLResolver 'ida.urls' (None:None) ^/> |
resolver_match | ResolverMatch(func=posts.views.post_detail.PostDetail, args=(), kwargs={'post_id': '124', 'post_slug': 'tehnicki-sastanak-partnera-u-projektu-corin'}, url_name=post_detail, app_names=['post'], namespaces=['novosti-481']) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fd2bf5bcf98> |
wrapped_callback | <function cms_perms.<locals>.inner at 0x7fd2bae630d0> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/core/handlers/base.py
in _get_response
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)...
except Exception as e:
response = self.process_exception_by_middleware(e, request)
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
Variable | Value |
---|---|
callback | <function cms_perms.<locals>.inner at 0x7fd2bae630d0> |
callback_args | () |
callback_kwargs | {'post_id': '124', 'post_slug': 'tehnicki-sastanak-partnera-u-projektu-corin'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fd2bf26b160>> |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
resolver | <RegexURLResolver 'ida.urls' (None:None) ^/> |
resolver_match | ResolverMatch(func=posts.views.post_detail.PostDetail, args=(), kwargs={'post_id': '124', 'post_slug': 'tehnicki-sastanak-partnera-u-projektu-corin'}, url_name=post_detail, app_names=['post'], namespaces=['novosti-481']) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fd2bf5bcf98> |
wrapped_callback | <function cms_perms.<locals>.inner at 0x7fd2bae630d0> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/cms/utils/decorators.py
in inner
page = request.current_page
if page:
if page.login_required and not request.user.is_authenticated():
return redirect_to_login(urlquote(request.get_full_path()), settings.LOGIN_URL)
site = get_current_site()
if not user_can_view_page(request.user, page, site):
return _handle_no_page(request)
return func(request, *args, **kwargs)...
inner.__module__ = func.__module__
inner.__doc__ = func.__doc__
if hasattr(func, '__name__'):
inner.__name__ = func.__name__
elif hasattr(func, '__class__'):
inner.__name__ = func.__class__.__name__
Variable | Value |
---|---|
args | () |
func | <function PostDetail at 0x7fd2be8b72f0> |
kwargs | {'post_id': '124', 'post_slug': 'tehnicki-sastanak-partnera-u-projektu-corin'} |
page | <SimpleLazyObject: <cms.models.pagemodel.Page id=1100 is_draft=False object at 0x7fd2ba0e9048>> |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
site | <Site: ida.hr> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/views/generic/base.py
in view
def view(request, *args, **kwargs):
self = cls(**initkwargs)
if hasattr(self, 'get') and not hasattr(self, 'head'):
self.head = self.get
self.request = request
self.args = args
self.kwargs = kwargs
return self.dispatch(request, *args, **kwargs)...
view.view_class = cls
view.view_initkwargs = initkwargs
# take name and docstring from class
update_wrapper(view, cls, updated=())
Variable | Value |
---|---|
args | () |
cls | <class 'posts.views.post_detail.PostDetail'> |
initkwargs | {} |
kwargs | {'post_id': '124', 'post_slug': 'tehnicki-sastanak-partnera-u-projektu-corin'} |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
self | <posts.views.post_detail.PostDetail object at 0x7fd2ba1025f8> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/views/generic/base.py
in dispatch
# Try to dispatch to the right method; if a method doesn't exist,
# defer to the error handler. Also defer to the error handler if the
# request method isn't on the approved list.
if request.method.lower() in self.http_method_names:
handler = getattr(self, request.method.lower(), self.http_method_not_allowed)
else:
handler = self.http_method_not_allowed
return handler(request, *args, **kwargs)...
def http_method_not_allowed(self, request, *args, **kwargs):
logger.warning(
'Method Not Allowed (%s): %s', request.method, request.path,
extra={'status_code': 405, 'request': request}
)
Variable | Value |
---|---|
args | () |
handler | <bound method PostDetail.get of <posts.views.post_detail.PostDetail object at 0x7fd2ba1025f8>> |
kwargs | {'post_id': '124', 'post_slug': 'tehnicki-sastanak-partnera-u-projektu-corin'} |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
self | <posts.views.post_detail.PostDetail object at 0x7fd2ba1025f8> |
./posts/views/post_detail.py
in get
context = {
"post": post,
"section": post.section,
"request": request
}
return render(request, post.template, context)...
Variable | Value |
---|---|
args | () |
context | {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'section': <Section: Novosti>} |
kwargs | {} |
post | <Post: Tehnički sastanak partnera u projektu CoRIn> |
post_id | '124' |
post_slug | 'tehnicki-sastanak-partnera-u-projektu-corin' |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
self | <posts.views.post_detail.PostDetail object at 0x7fd2ba1025f8> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/shortcuts.py
in render
def render(request, template_name, context=None, content_type=None, status=None, using=None):
"""
Returns a HttpResponse whose content is filled with the result of calling
django.template.loader.render_to_string() with the passed arguments.
"""
content = loader.render_to_string(template_name, context, request, using=using)...
return HttpResponse(content, content_type, status)
def redirect(to, *args, **kwargs):
"""
Returns an HttpResponseRedirect to the appropriate URL for the arguments
Variable | Value |
---|---|
content_type | None |
context | {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'section': <Section: Novosti>} |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
status | None |
template_name | 'posts/post_detail.html' |
using | None |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/template/loader.py
in render_to_string
template_name may be a string or a list of strings.
"""
if isinstance(template_name, (list, tuple)):
template = select_template(template_name, using=using)
else:
template = get_template(template_name, using=using)
return template.render(context, request)...
def _engine_list(using=None):
return engines.all() if using is None else [engines[using]]
Variable | Value |
---|---|
context | {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'section': <Section: Novosti>} |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
template | <django.template.backends.django.Template object at 0x7fd2ba0e9cf8> |
template_name | 'posts/post_detail.html' |
using | None |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
self | <django.template.backends.django.Template object at 0x7fd2ba0e9cf8> |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <django.template.base.Template object at 0x7fd2b9815908> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/template/base.py
in _render
def __iter__(self):
for node in self.nodelist:
for subnode in node:
yield subnode
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <django.template.base.Template object at 0x7fd2b9815908> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bits | [] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <ExtendsNode: extends 'posts/content.html'> |
self | [<ExtendsNode: extends 'posts/content.html'>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <ExtendsNode: extends 'posts/content.html'> |
/home/ubuntu/virtualenvs/ida/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, **kwargs):
Variable | Value |
---|---|
block_context | <django.template.loader_tags.BlockContext object at 0x7fd2bc697780> |
compiled_parent | <django.template.base.Template object at 0x7fd2bf1b9940> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <ExtendsNode: extends 'generic_content.html'> |
self | <ExtendsNode: extends 'posts/content.html'> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/template/base.py
in _render
def __iter__(self):
for node in self.nodelist:
for subnode in node:
yield subnode
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <django.template.base.Template object at 0x7fd2bf1b9940> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bits | [] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <ExtendsNode: extends 'generic_content.html'> |
self | [<ExtendsNode: extends 'generic_content.html'>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <ExtendsNode: extends 'generic_content.html'> |
/home/ubuntu/virtualenvs/ida/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, **kwargs):
Variable | Value |
---|---|
block_context | <django.template.loader_tags.BlockContext object at 0x7fd2bc697780> |
compiled_parent | <django.template.base.Template object at 0x7fd2be6b6128> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <ExtendsNode: extends "base.html"> |
self | <ExtendsNode: extends 'generic_content.html'> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/template/base.py
in _render
def __iter__(self):
for node in self.nodelist:
for subnode in node:
yield subnode
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <django.template.base.Template object at 0x7fd2be6b6128> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bits | [] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <ExtendsNode: extends "base.html"> |
self | [<ExtendsNode: extends "base.html">] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <ExtendsNode: extends "base.html"> |
/home/ubuntu/virtualenvs/ida/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, **kwargs):
Variable | Value |
---|---|
block_context | <django.template.loader_tags.BlockContext object at 0x7fd2bc697780> |
blocks | {'base_content': <Block Node: base_content. Contents: []>, 'extra_scripts': <Block Node: extra_scripts. Contents: []>, 'meta': <Block Node: meta. Contents: [<TextNode: '\n <meta property="'>, <IfNode>, <Variable Node: request.site.name>, <TextNode: '">\n <meta property'>, <Variable Node: request.build_absolute_uri>, <TextNode: '">\n '>, <IfNode>, <TextNode: '\n <meta property="'>, <Variable Node: page_description>, <TextNode: '">\n '>]>, 'scripts': <Block Node: scripts. Contents: [<TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba676470>, <TextNode: '\n <!--[if IE 11]>\n '>, <django.template.library.SimpleNode object at 0x7fd2ba676128>, <TextNode: '\n <![endif]-->\n'>]>, 'styles': <Block Node: styles. Contents: [<TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae978>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae588>, <TextNode: '\n '>]>, 'title': <Block Node: title. Contents: [<TextNode: '\n '>, <Tag: page_attribute>, <TextNode: '\n <title>'>, <IfNode>, <Variable Node: request.site.name>, <TextNode: '</title>\n '>, <Tag: page_attribute>, <TextNode: '\n <meta name="desc'>, <Variable Node: page_description>, <TextNode: '">\n '>]>} |
compiled_parent | <django.template.base.Template object at 0x7fd2bf1b9048> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <django.template.defaulttags.LoadNode object at 0x7fd2be509ba8> |
self | <ExtendsNode: extends "base.html"> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/template/base.py
in _render
def __iter__(self):
for node in self.nodelist:
for subnode in node:
yield subnode
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <django.template.base.Template object at 0x7fd2bf1b9048> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '">\n\n ' |
bits | ['', '\n', '', '\n\n<!DOCTYPE html>\n<html lang="', '', '">\n' '<head>\n' ' <meta charset="UTF-8">\n' ' <meta name="viewport" content="width=device-width, initial-scale=1.0">\n' ' <meta http-equiv="X-UA-Compatible" content="ie=edge">\n' '\n' ' ', '\n' ' \n' ' <title>Tehnički sastanak partnera u projektu CoRIn | IDA</title>\n' ' <meta name="description" content="U okviru\xa0sastanaka, koji su se ' 'odvijali tijekom dva dana, svi partneri u projektu CoRIn\xa0predstavili su ' 'pilot akcije koje će biti provedene u njihovim regijama. \n' 'IDA je predstavila plan aktivnosti za poticanje rasta znanja\xa0o važnosti ' 'ulaganja u razvojno-istraživačke projekte u Istarskoj županiji. \n' 'Uz provedbu\xa0regionalnih pilot akcija svakog\xa0partnera, predstojeće ' 'aktivnosti projekta CoRIn predviđaju i provedbu dvije transregionalne pilot ' 'akcije. Prva se odnosi na stvaranje baze podataka institucija i projekata s ' 'područja koja zastupaju partneri,\xa0vezanih uz istraživanje i razvoj u ' 'primarnog sektoru. Baza podataka je u izradi i trenutno prolazi testno ' 'razdoblje, a predviđeno je da bude dostupna za slobodnu uporabu krajem ' 'veljače 2008. godine. Druga transregionalna akcija predstavlja pokušaj ' 'utjecanja na glavne sudionike u donošenju politika/programa/inicijativa za ' 'poticanje istraživanja i razvoja.\xa0Partneri u projektu CoRIn zaključili su ' 'kako je najprikladnija aktivnost za ostvarenje navedenog cilja, organizacija ' 'međunarodne konferencije. Postignut je dogovor da konferencija bude održana ' 'u Sofiji u ožujku 2008. godine. ">\n' ' \n', '\n ', '\n' ' \n' ' <!-- Open Graph data -->\n' ' <meta property="og:title" content="Tehnički sastanak partnera u ' 'projektu CoRIn | IDA"/>\n' ' <meta property="og:type" content="article"/>\n' ' <meta property="og:url" ' 'content="https://ida.hr/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/"/>\n' '\n' ' \n' ' \n' ' \n' ' \n' ' <meta property="og:image" ' 'content="https://ida.hr/media/filer_public_thumbnails/filer_public/20/35/20354da9-6749-4ca3-8c40-36038739d33c/logoida.jpg__700x0_q85_crop_subsampling-2_upscale.jpg"/>\n' ' \n' ' \n' ' <meta property="og:image:height" content="817"/>\n' ' <meta property="og:image:width" content="700"/>\n' ' \n' '\n' ' <meta property="og:description" content="U okviru\xa0sastanaka, koji ' 'su se odvijali tijekom dva dana, svi partneri u projektu CoRIn\xa0' 'predstavili su pilot akcije koje će biti provedene u njihovim regijama. \n' 'IDA je predstavila plan aktivnosti za poticanje rasta znanja\xa0o važnosti ' 'ulaganja u razvojno-istraživačke projekte u Istarskoj županiji. \n' 'Uz provedbu\xa0regionalnih pilot akcija svakog\xa0partnera, predstojeće ' 'aktivnosti projekta CoRIn predviđaju i provedbu dvije transregionalne pilot ' 'akcije. Prva se odnosi na stvaranje baze podataka institucija i projekata s ' 'područja koja zastupaju partneri,\xa0vezanih uz istraživanje i razvoj u ' 'primarnog sektoru. Baza podataka je u izradi i trenutno prolazi testno ' 'razdoblje, a predviđeno je da bude dostupna za slobodnu uporabu krajem ' 'veljače 2008. godine. Druga transregionalna akcija predstavlja pokušaj ' 'utjecanja na glavne sudionike u donošenju politika/programa/inicijativa za ' 'poticanje istraživanja i razvoja.\xa0Partneri u projektu CoRIn zaključili su ' 'kako je najprikladnija aktivnost za ostvarenje navedenog cilja, organizacija ' 'međunarodne konferencije. Postignut je dogovor da konferencija bude održana ' 'u Sofiji u ožujku 2008. godine. "/>\n' ' \n' '\n', '\n ', '\n' ' <meta name="app_data_serialized" content="{"address": ' '"Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": ' 'null, "mobile_display": null, "phone": ' '"0038552381900", "phone_display"... <trimmed 4838 bytes string> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <Tag: render_block> |
self | [<django.template.defaulttags.LoadNode object at 0x7fd2be509ba8>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fd2be509b00>, <TextNode: '\n\n<!DOCTYPE html>\n<html l'>, <Variable Node: LANGUAGE_CODE>, <TextNode: '">\n<head>\n <meta chars'>, <Block Node: title. Contents: [<TextNode: '\n '>, <Tag: page_attribute>, <TextNode: '\n <title>'>, <IfNode>, <Variable Node: request.site.name>, <TextNode: '</title>\n '>, <Tag: page_attribute>, <TextNode: '\n <meta name="desc'>, <Variable Node: page_description>, <TextNode: '">\n '>]>, <TextNode: '\n '>, <Block Node: meta. Contents: [<TextNode: '\n <meta property="'>, <IfNode>, <Variable Node: request.site.name>, <TextNode: '">\n <meta property'>, <Variable Node: request.build_absolute_uri>, <TextNode: '">\n '>, <IfNode>, <TextNode: '\n <meta property="'>, <Variable Node: page_description>, <TextNode: '">\n '>]>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n <link rel="icon" typ'>, <django.templatetags.static.StaticNode object at 0x7fd2ba2ae5c0>, <TextNode: '">\n <link rel="icon" t'>, <django.templatetags.static.StaticNode object at 0x7fd2ba2ae438>, <TextNode: '">\n\n '>, <Tag: render_block>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <Tag: render_block> |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
items | dict_items([('name', <classytags.values.StringValue object at 0x7fd2ba2ae320>), ('postprocessor', <TemplateConstant: None>)]) |
kwargs | {'name': 'css', 'nodelist': [<TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae5f8>, <TextNode: '\n '>, <Block Node: styles. Contents: [<TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae978>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae588>, <TextNode: '\n '>]>, <TextNode: '\n <script type="text/j'>, <Tag: cms_toolbar>], 'postprocessor': None} |
self | <Tag: render_block> |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
name | 'css' |
nodelist | [<TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae5f8>, <TextNode: '\n '>, <Block Node: styles. Contents: [<TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae978>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae588>, <TextNode: '\n '>]>, <TextNode: '\n <script type="text/j'>, <Tag: cms_toolbar>] |
postprocessor | None |
self | <Tag: render_block> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('\n' ' <script type="text/javascript">\n' ' ' "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n" ' (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new ' 'Date();a=s.createElement(o),\n' ' ' 'm=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)\n' ' ' "})(window,document,'script','//www.google-analytics.com/analytics.js','ga');\n" '\n' " ga('create', 'UA-11750882-2', 'ida.hr');\n" " ga('send', 'pageview');\n" ' </script>\n' '\n' '</head>\n' '<body>\n' '\n' '<div id="fb-root"></div>\n' '<script>(function (d, s, id) {\n' ' var js, fjs = d.getElementsByTagName(s)[0];\n' ' if (d.getElementById(id)) return;\n' ' js = d.createElement(s);\n' ' js.id = id;\n' ' js.src = ' "'https://connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v3.2';\n" ' fjs.parentNode.insertBefore(js, fjs);\n' "}(document, 'script', 'facebook-jssdk'));</script>\n" '\n') |
bits | ['\n ', '<link type="text/css" ' 'href="/static/webpack_bundles/commons-66a3aefbbac687b46892.min.css" ' 'rel="stylesheet" />', '\n ', '\n' ' <link type="text/css" ' 'href="/static/webpack_bundles/main-66a3aefbbac687b46892.min.css" ' 'rel="stylesheet" />\n' ' <link type="text/css" ' 'href="/static/webpack_bundles/ie11-66a3aefbbac687b46892.min.css" ' 'rel="stylesheet" />\n' ' ', '\n' ' <script type="text/javascript">\n' ' ' "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n" ' (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new ' 'Date();a=s.createElement(o),\n' ' ' 'm=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)\n' ' ' "})(window,document,'script','//www.google-analytics.com/analytics.js','ga');\n" '\n' " ga('create', 'UA-11750882-2', 'ida.hr');\n" " ga('send', 'pageview');\n" ' </script>\n' '\n' '</head>\n' '<body>\n' '\n' '<div id="fb-root"></div>\n' '<script>(function (d, s, id) {\n' ' var js, fjs = d.getElementsByTagName(s)[0];\n' ' if (d.getElementById(id)) return;\n' ' js = d.createElement(s);\n' ' js.id = id;\n' ' js.src = ' "'https://connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v3.2';\n" ' fjs.parentNode.insertBefore(js, fjs);\n' "}(document, 'script', 'facebook-jssdk'));</script>\n" '\n'] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <Tag: cms_toolbar> |
self | [<TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae5f8>, <TextNode: '\n '>, <Block Node: styles. Contents: [<TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae978>, <TextNode: '\n '>, <django.template.library.SimpleNode object at 0x7fd2ba2ae588>, <TextNode: '\n '>]>, <TextNode: '\n <script type="text/j'>, <Tag: cms_toolbar>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <Tag: cms_toolbar> |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
items | dict_items([('name', <TemplateConstant: None>)]) |
kwargs | {'name': None, 'nodelist': [<TextNode: '\n\n<header>\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2ba6762b0>, <TextNode: '\n</header>\n\n<main>\n '>, <Block Node: base_content. Contents: []>, <TextNode: '\n</main>\n\n<footer>\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2ba676d68>, <TextNode: '\n</footer>\n\n'>, <Tag: render_block>]} |
self | <Tag: cms_toolbar> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/cms/templatetags/cms_tags.py
in render_tag
return nodelist.render(context)
toolbar = get_toolbar_from_request(request)
if toolbar and toolbar.show_toolbar:
toolbar.init_toolbar(request)
return toolbar.render_with_structure(context, nodelist)
return nodelist.render(context)...
class CMSEditableObject(InclusionTag):
"""
Templatetag that links a content extracted from a generic django model
to the model admin changeform.
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
name | None |
nodelist | [<TextNode: '\n\n<header>\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2ba6762b0>, <TextNode: '\n</header>\n\n<main>\n '>, <Block Node: base_content. Contents: []>, <TextNode: '\n</main>\n\n<footer>\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2ba676d68>, <TextNode: '\n</footer>\n\n'>, <Tag: render_block>] |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
self | <Tag: cms_toolbar> |
toolbar | <cms.toolbar.toolbar.CMSToolbar object at 0x7fd2bdb64c50> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n</header>\n\n<main>\n ' |
bits | ['\n\n<header>\n ', '\n' '\n' '<section class="main-nav">\n' '\n' ' \n' ' <div class="main-nav__top container">\n' ' <div class="main-nav__top__left">\n' ' <div class="main-nav__logo">\n' ' <a href="/" class="main-nav__logo__link">\n' ' <img src="/static/images/logo-simbol-120x120.png" ' 'class="main-nav__logo__simbol"\n' ' alt="IDA logo">\n' ' <img src="/static/images/logo-text-212x120.png" ' 'class="main-nav__logo__text" alt="IDA logo">\n' ' </a>\n' ' </div>\n' ' <ul class="main-nav__social">\n' ' \n' ' \n' '\n' ' <li><a ' 'href="https://www.facebook.com/IstarskaRazvojnaAgencija/" ' 'target="_blank"><img src="/static/images/social/facebook.png" ' 'class="effect--shadow" alt="Facebook"></a></li>\n' ' \n' ' \n' '\n' ' <li><a href="https://twitter.com/IDAPula" ' 'target="_blank"><img src="/static/images/social/twitter.png" ' 'class="effect--shadow" alt="Twitter"></a></li>\n' ' \n' ' \n' ' \n' '\n' ' <li><a ' 'href="https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA" ' 'target="_blank"><img src="/static/images/social/youtube.png" ' 'class="effect--shadow" alt="Youtube"></a></li>\n' ' \n' ' \n' ' </ul>\n' ' <div class="mobile-menu-toggle__wrapper">\n' ' <button class="mobile-menu-toggle"><i class="fa ' 'fa-bars"></i></button>\n' ' </div>\n' ' </div>\n' ' <div class="main-nav__top__right">\n' ' <ul class="main-navigation top-navigation">\n' ' \n' ' \n' ' \n' '\n' ' \n' ' \n' ' <li class="">\n' ' <a href="/hr/tn/o-nama/"\n' ' class=""><span>O NAMA</span></a>\n' ' \n' ' </li>\n' ' \n' '\n' ' \n' ' \n' ' <li class=" active">\n' ' <a href="/hr/tn/novosti-481/"\n' ' class=""><span>Novosti</span></a>\n' ' \n' ' </li>\n' ' \n' '\n' ' \n' ' \n' ' <li class="">\n' ' <a href="/hr/tn/ida-u-medijima/"\n' ' class=""><span>IDA u medijima</span></a>\n' ' \n' ' </li>\n' ' \n' '\n' ' \n' ' \n' ' <li class="">\n' ' <a href="/hr/tn/kontakti/"\n' ' class=""><span>Kontakti</span></a>\n' ' \n' ' </li>\n' ' \n' '\n' '\n' ' \n' ' </ul>\n' '\n' ' <ul class="main-navigation language-navigation">\n' ' \n' '\n' '\n' ' <li class="language-menu">\n' ' <a href="javascript:void(0)"><span>hr</span></a>\n' ' <button class="submenu-toggle"><i class="fa ' 'fa-chevron-down"></i></button>\n' ' <ul>\n' ' \n' ' <li class=" active">\n' ' <a ' 'href="/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/"\n' ' class=""\n' ' title="Change to language: Hrvatski">Hrvatski</a>\n' ' </li>\n' ' \n' ' <li class="">\n' ' <a ' 'href="/en/tn/news/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/"\n' ' class=""\n' ' title="Change to language: Engleski">Engleski</a>\n' ' </li>\n' ' \n' ' <li class="">\n' ' <a ' 'href="/it/tn/novita/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/"\n' ' class=""\n' ' title="Change to language: ' 'Talijanski">Talijanski</a>\n' ' </li>\n' ' \n' ' </ul>\n' ' </li>\n' ... <trimmed 15458 bytes string> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <Block Node: base_content. Contents: []> |
self | [<TextNode: '\n\n<header>\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2ba6762b0>, <TextNode: '\n</header>\n\n<main>\n '>, <Block Node: base_content. Contents: []>, <TextNode: '\n</main>\n\n<footer>\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2ba676d68>, <TextNode: '\n</footer>\n\n'>, <Tag: render_block>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <Block Node: base_content. Contents: []> |
/home/ubuntu/virtualenvs/ida/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_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7fd2bc697780> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
push | <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]> |
self | <Block Node: base_content. Contents: []> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n </ul>\n </div>\n </section>\n ' |
bits | ['\n' '\n' ' <section class="breadcrumbs-wrapper">\n' ' <div class="breadcrumbs container">\n' ' <ul class="breadcrumbs__navigation">\n' ' ', '\n' ' <li><a href="/">IDA</a></li>\n' ' \n' ' \n' ' \n' ' <li><span class="separator">»</span></li>\n' ' <li><a href="/hr/tn/novosti-481/">Novosti</a></li>\n' ' <li><span class="separator">»</span></li>\n' ' <li>\n' ' <span class="active">Tehnički sastanak partnera u projektu ' 'CoRIn</span>\n' ' </li>\n', '\n </ul>\n </div>\n </section>\n '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <Block Node: content. Contents: []> |
self | [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <Block Node: content. Contents: []> |
/home/ubuntu/virtualenvs/ida/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 <section class="post'>, <Block Node: posts_content. Contents: []>, <TextNode: '\n </div>\n\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2b9e08160>, <TextNode: '\n </div>\n </sec'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7fd2bc697780> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
push | <Block Node: content. Contents: [<TextNode: '\n <section class="post'>, <Block Node: posts_content. Contents: []>, <TextNode: '\n </div>\n\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2b9e08160>, <TextNode: '\n </div>\n </sec'>]> |
self | <Block Node: content. Contents: []> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('\n' ' <section class="post-wrapper container">\n' ' <div class="post-container">\n' ' ') |
bits | ['\n' ' <section class="post-wrapper container">\n' ' <div class="post-container">\n' ' '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <Block Node: posts_content. Contents: []> |
self | [<TextNode: '\n <section class="post'>, <Block Node: posts_content. Contents: []>, <TextNode: '\n </div>\n\n '>, <django.template.loader_tags.IncludeNode object at 0x7fd2b9e08160>, <TextNode: '\n </div>\n </sec'>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <Block Node: posts_content. Contents: []> |
/home/ubuntu/virtualenvs/ida/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: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7fd2bc697780> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
push | <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]> |
self | <Block Node: posts_content. Contents: []> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | (' Linkedin</button>\n' ' </div>\n' '\n' ' <div class="post-content__text more-padding-top">\n' ' <p>\n' ' ') |
bits | ['\n ', '', '\n\n <article class="post-content">\n ', '\n \n ', '\n\n <h1>', 'Tehnički sastanak partnera u projektu CoRIn', '</h1>\n' '\n' ' <div class="post-content__info">\n' ' <div class="post-content__date">\n' ' ', '', '\n ', '\n' ' <span><i class="fa fa-calendar"></i> ' '12.10.2007.</span>\n' ' ', '\n' ' </div>\n' ' <div class="post-content__category-wrapper">\n' ' ', '', '\n' ' </div>\n' ' </div>\n' '\n' ' <div class="social__wrapper">\n' ' <button class="facebook" data-sharer="facebook" ' 'data-hashtag="ida" data-url="', 'https://ida.hr', '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/', '">', 'Podjeli na', ' Facebook\n' ' </button>\n' ' <button class="twitter" data-sharer="twitter" data-title="', 'Tehnički sastanak partnera u projektu CoRIn', '"\n data-hashtags="ida" data-url="', 'https://ida.hr', '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/', '">', 'Podjeli na', ' Twitter\n' ' </button>\n' ' <button class="linkedin" data-sharer="linkedin" data-url="', 'https://ida.hr', '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/', '">', 'Podjeli na', ' Linkedin</button>\n' ' </div>\n' '\n' ' <div class="post-content__text more-padding-top">\n' ' <p>\n' ' '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
node | <Tag: render_placeholder> |
self | [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
self | <Tag: render_placeholder> |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
items | dict_items([('placeholder', <classytags.values.StringValue object at 0x7fd2b9ddb160>), ('width', <TemplateConstant: None>), ('language', <classytags.values.StringValue object at 0x7fd2b9ddb9b0>), ('varname', <TemplateConstant: None>)]) |
kwargs | {'language': 'hr', 'placeholder': <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2bdf33ac8>, 'varname': None, 'width': None} |
self | <Tag: render_placeholder> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/classytags/helpers.py
in render_tag
"""
varname = kwargs.pop(self.varname_name)
if varname:
value = self.get_value_for_context(context, **kwargs)
context[varname] = value
return ''
else:
value = self.get_value(context, **kwargs)...
return value
def get_value_for_context(self, context, **kwargs):
"""
Called when a value for a varname (in the "as varname" case) should is
requested. This can be used to for example suppress exceptions in this
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
kwargs | {'language': 'hr', 'placeholder': <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2bdf33ac8>, 'width': None} |
self | <Tag: render_placeholder> |
varname | None |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/cms/templatetags/cms_tags.py
in get_value
)
return content
def get_value_for_context(self, context, **kwargs):
return self._get_value(context, editable=False, **kwargs)
def get_value(self, context, **kwargs):
return self._get_value(context, **kwargs)...
class RenderUncachedPlaceholder(RenderPlaceholder):
"""
Uncached version of RenderPlaceholder
This templatetag will neither get the result from cache, nor will update
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
kwargs | {'language': 'hr', 'placeholder': <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2bdf33ac8>, 'width': None} |
self | <Tag: render_placeholder> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/cms/templatetags/cms_tags.py
in _get_value
content = renderer.render_placeholder(
placeholder=placeholder,
context=context,
language=kwargs.get('language'),
editable=editable,
use_cache=not nocache,
width=kwargs.get('width'),...
)
return content
def get_value_for_context(self, context, **kwargs):
return self._get_value(context, editable=False, **kwargs)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
editable | True |
kwargs | {'language': 'hr', 'placeholder': <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2bdf33ac8>, 'width': None} |
nocache | False |
placeholder | <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2bdf33ac8> |
renderer | <cms.plugin_rendering.LegacyRenderer object at 0x7fd2bf1b9da0> |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
self | <Tag: render_placeholder> |
toolbar | <cms.toolbar.toolbar.CMSToolbar object at 0x7fd2bdb64c50> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/cms/plugin_rendering.py
in render_placeholder
plugin_content = self.render_plugins(
placeholder,
language=language,
context=context,
editable=editable,
template=template,
)
placeholder_content = ''.join(plugin_content)...
if not placeholder_content and nodelist:
# should be nodelist from a template
placeholder_content = nodelist.render(context)
if use_cache:
Variable | Value |
---|---|
Watcher | <class 'sekizai.helpers.Watcher'> |
cached_value | None |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
editable | False |
language | 'hr' |
nodelist | None |
page | None |
placeholder | <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2bdf33ac8> |
plugin_content | <generator object ContentRenderer.render_plugins at 0x7fd2b9d24620> |
self | <cms.plugin_rendering.LegacyRenderer object at 0x7fd2bf1b9da0> |
template | None |
use_cache | True |
watcher | <sekizai.helpers.Watcher object at 0x7fd2ba676dd8> |
width | None |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/cms/plugin_rendering.py
in render_plugins
placeholder=placeholder,
template=template,
language=language,
)
for plugin in plugins:
plugin._placeholder_cache = placeholder
yield self.render_plugin(plugin, context, placeholder, editable)...
def _get_cached_placeholder_content(self, placeholder, language):
"""
Returns a dictionary mapping placeholder content and sekizai data.
Returns None if no cache is present.
"""
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>}, {'block': <Block Node: base_content. Contents: [<TextNode: '\n\n <section class="bre'>, <Block Node: breadcrumbs. Contents: [<TextNode: '\n '>, <Tag: show_breadcrumb>, <TextNode: '\n '>]>, <TextNode: '\n </ul>\n '>, <Block Node: content. Contents: []>, <TextNode: '\n'>]>}] |
editable | False |
language | 'hr' |
placeholder | <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2bdf33ac8> |
plugin | <djangocms_text_ckeditor.models.Text id=7191 plugin_type='TextPlugin' object at 0x7fd2be766240> |
plugins | [<djangocms_text_ckeditor.models.Text id=7191 plugin_type='TextPlugin' object at 0x7fd2be766240>] |
self | <cms.plugin_rendering.LegacyRenderer object at 0x7fd2bf1b9da0> |
template | None |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/cms/plugin_rendering.py
in render_plugin
# we'd better pass a flat dict to template.render
# as plugin.render can return pretty much any kind of context / dictionary
# we'd better flatten it and force to a Context object
# flattening the context means that template must be an engine-specific template object
# which is guaranteed by get_cached_template if the template returned by
# plugin._get_render_template is either a string or an engine-specific template object
context = PluginContext(context, instance, placeholder)
context = plugin.render(context, instance, placeholder.slot)...
context = flatten_context(context)
template = plugin._get_render_template(context, instance, placeholder)
template = self.templates.get_cached_template(template)
content = template.render(context)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: <function csrf.<locals>._get_val at 0x7fd2bda571e0>>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>}] |
editable | False |
instance | <djangocms_text_ckeditor.models.Text id=7191 plugin_type='TextPlugin' object at 0x7fd2be766240> |
placeholder | <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2bdf33ac8> |
plugin | Error in formatting: TypeError: __repr__ returned non-string (type __proxy__) |
self | <cms.plugin_rendering.LegacyRenderer object at 0x7fd2bf1b9da0> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_text_ckeditor/cms_plugins.py
in render
kwargs['form'] = form # override standard form
return super(TextPlugin, self).get_form(request, obj, **kwargs)
def render(self, context, instance, placeholder):
context.update({
'body': plugin_tags_to_user_html(
instance.body,
context,...
),
'placeholder': placeholder,
'object': instance
})
return context
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: <function csrf.<locals>._get_val at 0x7fd2bda571e0>>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>}] |
instance | <djangocms_text_ckeditor.models.Text id=7191 plugin_type='TextPlugin' object at 0x7fd2be766240> |
placeholder | 'post_content' |
self | Error in formatting: TypeError: __repr__ returned non-string (type __proxy__) |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_text_ckeditor/utils.py
in plugin_tags_to_user_html
return output_func(obj, m)
return OBJ_ADMIN_RE.sub(_render_tag, text)
def plugin_tags_to_user_html(text, context):
def _render_plugin(obj, match):
return _render_cms_plugin(obj, context)
return _plugin_tags_to_html(text, output_func=_render_plugin)...
def plugin_tags_to_admin_html(text, context):
def _render_plugin(obj, match):
plugin_content = _render_cms_plugin(obj, context)
return plugin_to_tag(obj, content=plugin_content, admin=True)
Variable | Value |
---|---|
_render_plugin | <function plugin_tags_to_user_html.<locals>._render_plugin at 0x7fd2bc620d08> |
context | [{'True': True, 'False': False, 'None': None}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: <function csrf.<locals>._get_val at 0x7fd2bda571e0>>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>}] |
text | ('U okviru\xa0sastanaka, koji su se odvijali tijekom dva dana, svi partneri u ' 'projektu <cms-plugin title="Link - CoRIn" id="7192" alt="Link - ' 'CoRIn">CoRIn</cms-plugin>\xa0predstavili su pilot akcije koje će biti ' 'provedene u njihovim regijama. \n' 'IDA je predstavila plan aktivnosti za poticanje rasta znanja\xa0o važnosti ' 'ulaganja u razvojno-istraživačke projekte u Istarskoj županiji. \n' 'Uz provedbu\xa0regionalnih pilot akcija svakog\xa0partnera, predstojeće ' 'aktivnosti projekta CoRIn predviđaju i provedbu dvije transregionalne pilot ' 'akcije. Prva se odnosi na stvaranje baze podataka institucija i projekata s ' 'područja koja zastupaju partneri,\xa0vezanih uz istraživanje i razvoj u ' 'primarnog sektoru. Baza podataka je u izradi i trenutno prolazi testno ' 'razdoblje, a predviđeno je da bude dostupna za slobodnu uporabu krajem ' 'veljače 2008. godine. Druga transregionalna akcija predstavlja pokušaj ' 'utjecanja na glavne sudionike u donošenju politika/programa/inicijativa za ' 'poticanje istraživanja i razvoja.\xa0Partneri u projektu CoRIn zaključili su ' 'kako je najprikladnija aktivnost za ostvarenje navedenog cilja, organizacija ' 'međunarodne konferencije. Postignut je dogovor da konferencija bude održana ' 'u Sofiji u ožujku 2008. godine. ') |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_text_ckeditor/utils.py
in _plugin_tags_to_html
except KeyError:
# Object must have been deleted. It cannot be rendered to
# end user so just remove it from the HTML altogether
return u''
else:
obj._render_meta.text_enabled = True
return output_func(obj, m)
return OBJ_ADMIN_RE.sub(_render_tag, text)...
def plugin_tags_to_user_html(text, context):
def _render_plugin(obj, match):
return _render_cms_plugin(obj, context)
return _plugin_tags_to_html(text, output_func=_render_plugin)
Variable | Value |
---|---|
_render_tag | <function _plugin_tags_to_html.<locals>._render_tag at 0x7fd2bc620510> |
output_func | <function plugin_tags_to_user_html.<locals>._render_plugin at 0x7fd2bc620d08> |
plugins_by_id | {7192: <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>} |
text | ('U okviru\xa0sastanaka, koji su se odvijali tijekom dva dana, svi partneri u ' 'projektu <cms-plugin title="Link - CoRIn" id="7192" alt="Link - ' 'CoRIn">CoRIn</cms-plugin>\xa0predstavili su pilot akcije koje će biti ' 'provedene u njihovim regijama. \n' 'IDA je predstavila plan aktivnosti za poticanje rasta znanja\xa0o važnosti ' 'ulaganja u razvojno-istraživačke projekte u Istarskoj županiji. \n' 'Uz provedbu\xa0regionalnih pilot akcija svakog\xa0partnera, predstojeće ' 'aktivnosti projekta CoRIn predviđaju i provedbu dvije transregionalne pilot ' 'akcije. Prva se odnosi na stvaranje baze podataka institucija i projekata s ' 'područja koja zastupaju partneri,\xa0vezanih uz istraživanje i razvoj u ' 'primarnog sektoru. Baza podataka je u izradi i trenutno prolazi testno ' 'razdoblje, a predviđeno je da bude dostupna za slobodnu uporabu krajem ' 'veljače 2008. godine. Druga transregionalna akcija predstavlja pokušaj ' 'utjecanja na glavne sudionike u donošenju politika/programa/inicijativa za ' 'poticanje istraživanja i razvoja.\xa0Partneri u projektu CoRIn zaključili su ' 'kako je najprikladnija aktivnost za ostvarenje navedenog cilja, organizacija ' 'međunarodne konferencije. Postignut je dogovor da konferencija bude održana ' 'u Sofiji u ožujku 2008. godine. ') |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_text_ckeditor/utils.py
in _render_tag
obj = plugins_by_id[plugin_id]
except KeyError:
# Object must have been deleted. It cannot be rendered to
# end user so just remove it from the HTML altogether
return u''
else:
obj._render_meta.text_enabled = True
return output_func(obj, m)...
return OBJ_ADMIN_RE.sub(_render_tag, text)
def plugin_tags_to_user_html(text, context):
def _render_plugin(obj, match):
return _render_cms_plugin(obj, context)
Variable | Value |
---|---|
m | <_sre.SRE_Match object; span=(82, 162), match='<cms-plugin title="Link - CoRIn" id="7192" alt="L> |
obj | <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90> |
output_func | <function plugin_tags_to_user_html.<locals>._render_plugin at 0x7fd2bc620d08> |
plugin_id | 7192 |
plugins_by_id | {7192: <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>} |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_text_ckeditor/utils.py
in _render_plugin
obj._render_meta.text_enabled = True
return output_func(obj, m)
return OBJ_ADMIN_RE.sub(_render_tag, text)
def plugin_tags_to_user_html(text, context):
def _render_plugin(obj, match):
return _render_cms_plugin(obj, context)...
return _plugin_tags_to_html(text, output_func=_render_plugin)
def plugin_tags_to_admin_html(text, context):
def _render_plugin(obj, match):
plugin_content = _render_cms_plugin(obj, context)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: <function csrf.<locals>._get_val at 0x7fd2bda571e0>>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>}] |
match | <_sre.SRE_Match object; span=(82, 162), match='<cms-plugin title="Link - CoRIn" id="7192" alt="L> |
obj | <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_text_ckeditor/utils.py
in _render_cms_plugin
# The compromise is to render a template so that Django binds the context to it
# and thus calls context processors AND render the plugin manually with the context
# after it's been bound to a template.
response = render_to_string(
'cms/plugins/render_plugin_preview.html',
context,
request=context['request'],...
)
return response
def random_comment_exempt(view_func):
# Borrowed from
Variable | Value |
---|---|
context | {'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'False': False, 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'None': None, 'PROJECT_LIST_FULL_URL': 'project:list', 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'True': True, 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, ' 'Hrvatska", "mobile": null, "mobile_display": null, ' '"phone": "0038552381900", "phone_display": "+385 52 ' '381 900", "fax": null, "email": "ida-uprava@ida.hr", ' '"share_image": 8844, "facebook": ' '"https://www.facebook.com/IstarskaRazvojnaAgencija/", ' '"twitter": "https://twitter.com/IDAPula", ' '"instagram": null, "youtube": ' '"https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", ' '"position": "44.86774680000001,13.851477599999953"}', 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'csrf_token': <SimpleLazyObject: <function csrf.<locals>._get_val at 0x7fd2bda571e0>>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>, 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'section': <Section: Novosti>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>} |
plugin | <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/template/loader.py
in render_to_string
template_name may be a string or a list of strings.
"""
if isinstance(template_name, (list, tuple)):
template = select_template(template_name, using=using)
else:
template = get_template(template_name, using=using)
return template.render(context, request)...
def _engine_list(using=None):
return engines.all() if using is None else [engines[using]]
Variable | Value |
---|---|
context | {'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'False': False, 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'None': None, 'PROJECT_LIST_FULL_URL': 'project:list', 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'True': True, 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, ' 'Hrvatska", "mobile": null, "mobile_display": null, ' '"phone": "0038552381900", "phone_display": "+385 52 ' '381 900", "fax": null, "email": "ida-uprava@ida.hr", ' '"share_image": 8844, "facebook": ' '"https://www.facebook.com/IstarskaRazvojnaAgencija/", ' '"twitter": "https://twitter.com/IDAPula", ' '"instagram": null, "youtube": ' '"https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", ' '"position": "44.86774680000001,13.851477599999953"}', 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>, 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'section': <Section: Novosti>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>} |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
template | <django.template.backends.django.Template object at 0x7fd2bda74da0> |
template_name | 'cms/plugins/render_plugin_preview.html' |
using | None |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
self | <django.template.backends.django.Template object at 0x7fd2bda74da0> |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
self | <django.template.base.Template object at 0x7fd2bdedefd0> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/template/base.py
in _render
def __iter__(self):
for node in self.nodelist:
for subnode in node:
yield subnode
def _render(self, context):
return self.nodelist.render(context)...
def render(self, context):
"Display stage -- can be called many times"
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}, {}, {}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
self | <django.template.base.Template object at 0x7fd2bdedefd0> |
/home/ubuntu/virtualenvs/ida/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(force_text(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '' |
bits | [''] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
node | <django.template.library.SimpleNode object at 0x7fd2be766f60> |
self | [<django.template.defaulttags.LoadNode object at 0x7fd2be766ba8>, <django.template.library.SimpleNode object at 0x7fd2be766f60>] |
/home/ubuntu/virtualenvs/ida/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}, {}, {}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
self | <django.template.library.SimpleNode object at 0x7fd2be766f60> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/django/template/library.py
in render
def __init__(self, func, takes_context, args, kwargs, target_var):
super(SimpleNode, self).__init__(func, takes_context, args, kwargs)
self.target_var = target_var
def render(self, context):
resolved_args, resolved_kwargs = self.get_resolved_arguments(context)
output = self.func(*resolved_args, **resolved_kwargs)...
if self.target_var is not None:
context[self.target_var] = output
return ''
if context.autoescape:
output = conditional_escape(output)
return output
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
resolved_args | [[{'True': True, 'False': False, 'None': None}, {}, {}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}], <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>] |
resolved_kwargs | {} |
self | <django.template.library.SimpleNode object at 0x7fd2be766f60> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_text_ckeditor/templatetags/djangocms_text_ckeditor_tags.py
in render_plugin_preview
from cms.plugin_rendering import ContentRenderer
content_renderer = ContentRenderer(request)
content = content_renderer.render_plugin(
instance=plugin,
context=context,
editable=False,...
)
return content
Variable | Value |
---|---|
content_renderer | <cms.plugin_rendering.ContentRenderer object at 0x7fd2bf214630> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
plugin | <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90> |
request | <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/cms/plugin_rendering.py
in render_plugin
# we'd better pass a flat dict to template.render
# as plugin.render can return pretty much any kind of context / dictionary
# we'd better flatten it and force to a Context object
# flattening the context means that template must be an engine-specific template object
# which is guaranteed by get_cached_template if the template returned by
# plugin._get_render_template is either a string or an engine-specific template object
context = PluginContext(context, instance, placeholder)
context = plugin.render(context, instance, placeholder.slot)...
context = flatten_context(context)
template = plugin._get_render_template(context, instance, placeholder)
template = self.templates.get_cached_template(template)
content = template.render(context)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
editable | False |
instance | <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90> |
placeholder | <cms.models.placeholdermodel.Placeholder id=1228 slot='post_content' object at 0x7fd2be519fd0> |
plugin | Error in formatting: TypeError: __repr__ returned non-string (type __proxy__) |
self | <cms.plugin_rendering.ContentRenderer object at 0x7fd2bf214630> |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_link/cms_plugins.py
in render
queryset = super(LinkPlugin, cls).get_render_queryset()
return queryset.select_related('internal_link')
def get_render_template(self, context, instance, placeholder):
return 'djangocms_link/{}/link.html'.format(instance.template)
def render(self, context, instance, placeholder):
context['link'] = instance.get_link()...
return super(LinkPlugin, self).render(context, instance, placeholder)
def get_form(self, request, obj=None, **kwargs):
form_class = super(LinkPlugin, self).get_form(request, obj, **kwargs)
if obj and obj.page and obj.page.site:
Variable | Value |
---|---|
__class__ | <class 'djangocms_link.cms_plugins.LinkPlugin'> |
context | [{'True': True, 'False': False, 'None': None}, {'True': True, 'False': False, 'None': None, 'csrf_token': <SimpleLazyObject: 'i3U8w3FE7QR5l4JAGvFwgbIPuGaTwjxFCPuygfM9QFJsunqyl4kdG1pyFtV8SL5E'>, 'request': <WSGIRequest: GET '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/'>, 'user': <SimpleLazyObject: <django.contrib.auth.models.AnonymousUser object at 0x7fd2bdb641d0>>, 'perms': <django.contrib.auth.context_processors.PermWrapper object at 0x7fd2ba0e90b8>, 'messages': <django.contrib.messages.storage.fallback.FallbackStorage object at 0x7fd2b9e8c2b0>, 'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30, 'ERROR': 40}, 'cms_menu_renderer': <menus.menu_pool.MenuRenderer object at 0x7fd2bab10a20>, 'CMS_MEDIA_URL': '/media/cms/', 'CMS_TEMPLATE': <function cms_settings.<locals>.<lambda> at 0x7fd2b9b95c80>, 'SEKIZAI_CONTENT_HOLDER': defaultdict(<class 'sekizai.data.UniqueSequence'>, {}), 'app_data': <Settings: Postavke>, 'app_data_serialized': '{"address": "Mleta\\u010dka 12/IV, 52100 Pula, Hrvatska", "mobile": null, "mobile_display": null, "phone": "0038552381900", "phone_display": "+385 52 381 900", "fax": null, "email": "ida-uprava@ida.hr", "share_image": 8844, "facebook": "https://www.facebook.com/IstarskaRazvojnaAgencija/", "twitter": "https://twitter.com/IDAPula", "instagram": null, "youtube": "https://www.youtube.com/channel/UClCX6ZoGK4CzFVeMCY0K1fA", "position": "44.86774680000001,13.851477599999953"}', 'CMS_ALIGNEMENT_LEFT': '1', 'CMS_ALIGNEMENT_RIGHT': '2', 'INCUBATOR_LIST_FULL_URL': 'incubator:list', 'INCUBATOR_CREATE_NOTICE_FULL_URL': 'incubator:create-notice', 'PROJECT_LIST_FULL_URL': 'project:list', 'ENTREPRENEURIAL_ZONE_LIST_FULL_URL': 'entrepreneurial_zone:list', 'post': <Post: Tehnički sastanak partnera u projektu CoRIn>, 'section': <Section: Novosti>, 'block': <Block Node: posts_content. Contents: [<TextNode: '\n '>, <IfNode>, <TextNode: '\n\n <article class="pos'>, <IfNode>, <TextNode: '\n\n <h1>'>, <Variable Node: post.title>, <TextNode: '</h1>\n\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </div>\n '>, <For Node: for category in post.categories.all, tail_len: 5>, <TextNode: '\n </div>\n '>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105198>, <TextNode: ' Facebook\n </b'>, <Variable Node: post.title>, <TextNode: '"\n dat'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2bb105470>, <TextNode: ' Twitter\n </bu'>, <Variable Node: request|get_host_url>, <Variable Node: post.get_absolute_url>, <TextNode: '">'>, <django.templatetags.i18n.TranslateNode object at 0x7fd2b9ddbe10>, <TextNode: ' Linkedin</button>\n '>, <Tag: render_placeholder>, <TextNode: '\n </p>\n '>, <IfNode>, <TextNode: '\n </div>\n </art'>]>, 'plugin': <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90>}] |
instance | <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90> |
placeholder | 'post_content' |
self | Error in formatting: TypeError: __repr__ returned non-string (type __proxy__) |
/home/ubuntu/virtualenvs/ida/lib/python3.6/site-packages/djangocms_link/models.py
in get_link
def get_link(self):
if self.internal_link:
ref_page = self.internal_link
link = ref_page.get_absolute_url()
# simulate the call to the unauthorized CMSPlugin.page property
cms_page = self.placeholder.page if self.placeholder_id else None
if getattr(cms_page, 'node'):...
ref_page_site_id = ref_page.node.site_id
cms_page_site_id = getattr(cms_page.node, 'site_id', None)
else:
ref_page_site_id = ref_page.site_id
cms_page_site_id = getattr(cms_page, 'site_id', None)
Variable | Value |
---|---|
cms_page | None |
link | '/hr/bn/eu-projects/ostalo/eu-projekti-u-provedbi/' |
ref_page | <cms.models.pagemodel.Page id=231 is_draft=True object at 0x7fd2be519f98> |
self | <djangocms_link.models.Link id=7192 plugin_type='LinkPlugin' object at 0x7fd2bdfa3a90> |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTENT_LENGTH | '' |
CONTENT_TYPE | '' |
CSRF_COOKIE | 'WGbZTPj8BMnzjjuz8OHB7T28TodiNRI5gsLpD1qDkBfWsCbxNnmixJJR4bYx9jg4' |
CSRF_COOKIE_USED | True |
DOCUMENT_ROOT | '/usr/share/nginx/html' |
HTTPS | 'on' |
HTTP_ACCEPT | '*/*' |
HTTP_HOST | 'ida.hr' |
HTTP_USER_AGENT | 'claudebot' |
PATH_INFO | '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/' |
QUERY_STRING | '' |
REMOTE_ADDR | '3.91.19.28' |
REMOTE_PORT | '54392' |
REQUEST_METHOD | 'GET' |
REQUEST_SCHEME | 'https' |
REQUEST_URI | '/hr/tn/novosti-481/detail/124/tehnicki-sastanak-partnera-u-projektu-corin/' |
SCRIPT_NAME | '' |
SERVER_NAME | 'ida.hr' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/1.1' |
uwsgi.node | b'localhost' |
uwsgi.version | b'2.0.18' |
wsgi.errors | <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'> |
wsgi.file_wrapper | '' |
wsgi.input | <uwsgi._Input object at 0x7fd2bdbaddf8> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
ida.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | ['localhost', 'ida.hr', 'www.ida.hr'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | '/home/ubuntu/djangosites/ida' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'KEY_PREFIX': '********************', 'LOCATION': '127.0.0.1:11211'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CKEDITOR_UPLOAD_PATH | 'media' |
CMS_ENABLE_UPDATE_CHECK | False |
CMS_TEMPLATES | (('content.html', 'Sadržaj'), ('content_no_sidebar.html', 'Content without sidebar'), ('aboutus.html', 'O nama'), ('detail-post.html', 'Detalj članka'), ('home.html', 'Naslovna'), ('novosti.html', 'Novosti'), ('novost.html', 'Novost'), ('hq_istria.html', 'HQ ISTRIA'), ('page-tree.html', 'CMS stablo')) |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql', 'HOST': '', 'NAME': 'ida', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'ubuntu'}} |
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 | 'no-reply@ida.hr' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
DJANGOCMS_LINK_USE_SELECT2 | True |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'smtp.eu.mailgun.org' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | 'postmaster@mg.ida.hr' |
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 |
FILER_IMAGE_MODEL | 'filer.Image' |
FILE_CHARSET | 'utf-8' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | None |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.TemplatesSetting' |
GEOPOSITION_GOOGLE_MAPS_API_KEY | '********************' |
GEOPOSITION_MAP_OPTIONS | {'maxZoom': 15, 'minZoom': 3} |
GEOPOSITION_MARKER_OPTIONS | {'cursor': 'move'} |
GOOGLE_TAG_ID | None |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ['modeltranslation', 'djangocms_admin_style', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.postgres', 'django.contrib.sitemaps', 'django.contrib.gis', 'django.forms', 'absolute', 'adminsortable2', 'aldryn_forms', 'aldryn_forms.contrib.email_notifications', 'captcha', 'cms', 'commons', 'django_select2', 'djangocms_file', 'djangocms_link', 'djangocms_picture', 'djangocms_text_ckeditor', 'djangocms_video', 'easy_thumbnails', 'el_pagination', 'emailit', 'filer', 'geoposition', 'gtm', 'mailer', 'menus', 'rest_framework', 'rosetta', 'sekizai', 'treebeard', 'webpack_loader', 'posts', 'contact', 'employee', 'incubator', 'entrepreneurial_zone', 'project', 'credit_line'] |
INTERNAL_IPS | [] |
LANGUAGES | (('hr', 'Hrvatski'), ('en', 'Engleski'), ('it', 'Talijanski')) |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'hr' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LOCALE_PATHS | ['/home/ubuntu/djangosites/ida/locale'] |
LOGGING | {'disable_existing_loggers': False, 'handlers': {'file': {'class': 'logging.FileHandler', 'filename': '/home/ubuntu/djangosites/ida/logs/django.log', 'level': 'DEBUG'}}, 'loggers': {'django': {'handlers': ['file'], 'level': 'ERROR', 'propagate': True}}, 'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/admin/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MEDIA_ROOT | '/home/ubuntu/djangosites/ida/media' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['django.middleware.security.SecurityMiddleware', 'cms.middleware.utils.ApphookReloadMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.contrib.sites.middleware.CurrentSiteMiddleware', 'cms.middleware.user.CurrentUserMiddleware', 'cms.middleware.page.CurrentPageMiddleware', 'cms.middleware.toolbar.ToolbarMiddleware', 'cms.middleware.language.LanguageCookieMiddleware'] |
MIDDLEWARE_CLASSES | ['django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
ROOT_URLCONF | 'ida.urls' |
ROSETTA_SHOW_AT_ADMIN_PANEL | True |
ROSETTA_STORAGE_CLASS | 'rosetta.storage.CacheRosettaStorage' |
ROSETTA_UWSGI_AUTO_RELOAD | True |
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 |
SELECT2_CACHE_BACKEND | 'default' |
SELECT2_CACHE_PREFIX | 'select2_' |
SELECT2_CSS | '//cdnjs.cloudflare.com/ajax/libs/select2/4.0.5/css/select2.min.css' |
SELECT2_I18N_AVAILABLE_LANGUAGES | ['ar', 'az', 'bg', 'ca', 'cs', 'da', 'de', 'el', 'en', 'es', 'et', 'eu', 'fa', 'fi', 'fr', 'gl', 'he', 'hi', 'hr', 'hu', 'id', 'is', 'it', 'ja', 'km', 'ko', 'lt', 'lv', 'mk', 'ms', 'nb', 'nl', 'pl', 'pt-BR', 'pt', 'ro', 'ru', 'sk', 'sr-Cyrl', 'sr', 'sv', 'th', 'tr', 'uk', 'vi', 'zh-CN', 'zh-TW'] |
SELECT2_I18N_PATH | '//cdnjs.cloudflare.com/ajax/libs/select2/4.0.5/js/i18n' |
SELECT2_JS | '//cdnjs.cloudflare.com/ajax/libs/select2/4.0.5/js/select2.min.js' |
SELECT2_LIB_VERSION | '4.0.5' |
SERVER_EMAIL | 'root@localhost' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
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 | 'ida.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_ID | 1 |
STATICFILES_DIRS | ('/home/ubuntu/djangosites/ida/ida/static', '/home/ubuntu/djangosites/ida/dist') |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/home/ubuntu/djangosites/ida/static' |
STATIC_URL | '/static/' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/home/ubuntu/djangosites/ida/ida/templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'cms.context_processors.cms_settings', 'sekizai.context_processors.sekizai', 'commons.context_processors.commons_data', 'incubator.context_processors.data', 'project.context_processors.data', 'entrepreneurial_zone.context_processors.data']}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
THUMBNAIL_ALIASES | {'': {'big': {'crop': False, 'size': (900, 900)}, 'share': {'crop': False, 'size': (1200, 530), 'upscale': False}, 'small': {'crop': True, 'size': (250, 250), 'upscale': True}, 'standard': {'crop': True, 'size': (600, 600), 'upscale': True}}} |
THUMBNAIL_HIGH_RESOLUTION | True |
THUMBNAIL_PROCESSORS | ('easy_thumbnails.processors.colorspace', 'easy_thumbnails.processors.autocrop', 'filer.thumbnail_processors.scale_and_crop_with_subject_location', 'easy_thumbnails.processors.filters') |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'CET' |
TYPO3_DB_NAME | 'typo3' |
TYPO3_LANGUAGES | {0: 'hr', 1: 'en', 2: 'it'} |
USE_ETAGS | False |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'ida.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.