对不起或令人困惑的标题!它实际上比听起来要简单得多。
我有一个功能:
def get_messages(request):
# do something expensive with the request
return 'string'
我希望能够从模板中调用该函数,因此我使用了上下文处理器:
def context_processor(request):
return {'messages':get_messages(request)}
所以现在当我{{messages}}
在我的模板中时,string
打印出来。伟大的。
这个问题get_messages
非常昂贵,并不总是需要。不到一半的模板需要它。有没有办法将函数传递给模板,如果它运行或不运行,则将其留给模板?
我已经试过了:
def context_processor(request):
return {'messages':get_messages}
但这只是<function get_messages at 0x23e97d0>
在模板中输出功能描述,而不是运行它。