9

我正在尝试创建包含标签并将其放置在页面上,但它不起作用。

我的意见.py:

from django.shortcuts import render_to_response, redirect
from django import template


register = template.Library()

@register.inclusion_tag('weather.html')
def weather():
    return {'city': 'angola'}


def home(request):
    return render_to_response('index.html')

索引.html

<title> TITLE </title>

Hi everyone!

{% weather %}

天气.html

weather is fine in {{city}}

Django调试页面说“无效的块标签:'天气'”所以我想我把inclusion_tag的声明放在错误的地方?我需要把它放在哪里才能让它工作?

4

1 回答 1

10

模板标签需要放在应用程序templatetags目录中的模块中。有关完整详细信息,请参阅自定义模板标签文档的代码布局部分。

然后,您必须load在模板中使用您的标签库,然后再使用您的标签。

{% load my_tags %}
{% weather %}
于 2012-08-24T21:35:47.370 回答