我有一个django模型Story
,我可以使用模板成功地索引它。然而,还有另一个模型Reviews
,它有一个静态方法,它接受Story
对象,并返回ratings
作为整数。我如何在ratings
上索引Story
呢?
{{ object.story_name }}
{{Reviews.ratings(object)}}
我尝试在模板story_text.txt
中调用此方法,但结果出现错误。
django.template.exceptions.TemplateSyntaxError: Could not parse the remainder: '(object)'....
**编辑:**我尝试在模板中使用下面的字段,在建立索引时没有给予任何错误。但现在如何在使用SearchQuerySet
搜索时引用此字段
Reviews.average_start_rating( {{object}} )
3条答案
按热度按时间zi8p0yeb1#
我很困惑。我不认为你可以在Django的模板引擎中使用像{{评论.评分对象}}这样的语法。如果可以的话,那是我不知道的。
为什么不首先在Context中传递要在模板中显示的内容呢?
{{ object }}可能会转译,因为它在内容中有对象。例如,如果您使用UpdateView(以类别为基础的检视),它会自动在内容中包含对象。
你可以在你的html.html中使用
{{object}}
,因为有了UpdateView。你可以在url conf中给予pk号,比如(?P<pk>[0-9]+)
。您可以在没有UpdateView的情况下这样做
在窗体视图中,您可以使用
我的想法是在上下文中一起传递故事对象和具有故事对象的FK的评论对象。
8ehkhllq2#
我能够让它工作使用干草堆高级数据准备。高级数据准备
使用一个额外的字段,可以有一个准备方法。然而,唯一的问题是我可以使用这个字段排序数据,但不能使用它搜索。
qoefvg9y3#
在这里,您可以使用prepare或prepare_FOO方法,而不是使用
text
字段的模板: