1

我编写了一个包含标签来显示带有许多(可选)参数的专辑评论。这是标签:

@register.inclusion_tag('reviews/review_trail.html')
def review_trail(review, coverPosition='left', scoreMode='corner', showLargeHeadings=False, wordsToShow=30):
return {
    'r' : review, 
    coverPosition: coverPosition, 
    scoreMode: scoreMode, 
    showLargeHeadings: showLargeHeadings, 
    wordsToShow: wordsToShow 
}    

我这样称呼标签:

{% review_trail review=r coverPosition="right" %}

reviews除了/r值之外,似乎没有任何参数传递到我的 HTML 模板。如果我在包含标签中记录参数,我会看到它们正确传递,但是当我在其中输出它们时review_trail.html它们都是空白的。我使用了错误的语法,还是不能以这种方式使用多个参数?使用 Django 1.4 和文档似乎表明这很好

4

1 回答 1

2

您没有对字典中的所有键使用单引号,因此 python 使用变量的值作为键的名称。

将其更改为:

return {
    'r': review, 
    'coverPosition': coverPosition, 
    'scoreMode': scoreMode, 
    'showLargeHeadings': showLargeHeadings, 
    'wordsToShow': wordsToShow 
}    
于 2012-09-09T12:20:58.940 回答