当传递一个名为widget
的对象作为上下文的一部分来渲染django模板时,我可能有一个方法有点贵,但我想多次显示它的结果。
的Python:
class Widget:
def work(self):
# Do something expensive
模板
This is a widget, the result of whose work is {{widget.work}}. Do
you want to save {{widget.work}} or discard {{widget.work}}?
显然,我可以通过在视图代码中对方法进行一次评估然后传递结果来解决这个问题,但这似乎过多地结合了视图和模板。模板作者是否有办法隐藏值以便稍后在模板中重用?我想做这样的事情:
{% work_result = widget.work %}
This is a widget, the result of whose
work is {{work_result}}. Do you want to save {{work_result}} or discard {{work_result}}?
这种构造是否存在于django模板语言中?