django cms - 无效的块标签 endblock
Posted
技术标签:
【中文标题】django cms - 无效的块标签 endblock【英文标题】:django cms - invalid block tag endblock 【发布时间】:2012-03-09 21:25:45 【问题描述】:我试图让 django cms 与 pinax 一起工作,但由于某种原因 runserver 给了我这个: http://dpaste.com/704936/
接近尾声:
....
File "/home/tux/VirtualEnvs/NewAvePinaxBootstrap/lib/python2.7/site-packages/sekizai/templatetags/sekizai_tags.py", line 43, in parse_blocks
self.blocks['nodelist'] = self.parser.parse()
File "/home/tux/VirtualEnvs/NewAvePinaxBootstrap/lib/python2.7/site-packages/django/template/base.py", line 237, in parse
self.invalid_block_tag(token, command, parse_until)
File "/home/tux/VirtualEnvs/NewAvePinaxBootstrap/lib/python2.7/site-packages/django/template/base.py", line 291, in invalid_block_tag
raise self.error(token, "Invalid block tag: '%s'" % command)
django.template.base.TemplateSyntaxError: Invalid block tag: 'endblock'
endblock 如何是一个无效的块标签?当我从我的 INSTALLED_APPS 中禁用“cms”时,错误就消失了。所以,我认为出于某种原因这是 django cms 的错,还是这是一个更普遍的 django 问题? django cms 不能与 pinax 一起使用吗?我按照 django cms 文档上的教程制作/复制了他们的示例模板_1。
【问题讨论】:
没有看到你的模板代码很难判断,但请检查你是否 a) 在你的 settings.py 中包含中间件和上下文处理器,并且任何使用自定义标签的模板都包含% load cms_tags %
行一开始。
【参考方案1】:
我想通了。问题出在模板中。我不知道 sekizai 标签不能在块标签中工作。来自sekizai documentation:
标签必须在基本模板中。它不能在包含的模板中使用。 标签不得放置在块标签内(带有结束标签的模板标签,例如 % block name %...% endblock %)。
供以后可能遇到此问题的人参考。这是有问题的代码:
% block extra_style %% render_block "css" %% endblock %
【讨论】:
很高兴您设法回答了自己的问题。您可能想尝试在有关您使用什么的问题中添加更多细节(例如,django-cms 和 sekizai 都在 INSTALLED_APPS 中,并且 sekizai.context_processors.sekizai 在 TEMPATE_CONTEXT_PROCESSORS 中)。 会的!谢谢你。我真的不知道我的问题出在哪里,所以我真的不知道到底什么是相关的。我将在以后的问题中添加更具体的细节。 另外 Django-CMS 本身也不喜欢它的% cms_toolbar %
块内的标签。以上是关于django cms - 无效的块标签 endblock的主要内容,如果未能解决你的问题,请参考以下文章
Django 无效的块标签:'endfor',预期的'endblock'
Django:无效的块标签:'static',预期的'endif'
Google App Engine Python django TemplateSyntaxError:无效的块标签:'endif'