夹层博客页面标题未显示

时间:2013-12-21 14:25:18

标签: html django blogs mezzanine

我正在开发一个客户端的Dj​​ango / Mezzanine网站,它有一些我似乎无法弄清楚的奇怪问题。在博客页面(blog_post_list.html的模板)我无法获得要显示的页面的元标题,这意味着

{% block meta_title %}
{{ blog_page.title }}  
{% endblock %}

在生成的html中不生成输出。元描述也是如此,但我并不担心它。奇怪的是,它似乎适用于个人博客条目,以及网站上除博客列表之外的所有其他页面。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

如果渲染不存在的变量或变量值为None,则Django模板中不显示任何内容。

首先测试{{ blog_page }}是否呈现任何内容。如果它不检查模板上下文中是否有blog_page

您可以通过编写简单的自定义模板标签来调试模板的上下文,例如:

模板/ your_template.html:

{% load pdb from debug %}

{% block meta_title %}
    {% pdb %}
    {{ blog_page.title }}  
{% endblock %}

templatetags / debug.py:

from django import template
register = template.Library()

@register.simple_tag(name='pdb', takes_context=True)
def pdb(context, *args, **kwargs):
    import ipdb;
    ipdb.set_trace()

答案 1 :(得分:0)

显然,涉及到一些混乱:我认为blog_page.title是夹层中的标准变量,显然它不是,它是由前一个开发人员创建的自定义模型。由于我基本上只有模板和DB的转储,因此似乎无法恢复blog_page类的原始模型,所以我只是通过在blog_post_list模板中手动提供元标题来解决它。