gpt4 book ai didi

python - View 中的 DJANGO 回调函数

转载 作者:太空宇宙 更新时间:2023-11-04 09:12:49 24 4
gpt4 key购买 nike

我需要的是在一个或多个 View 中自动调用一个函数(回调函数),获取其结果并将其传递给模板。

这是一个简化的例子:

实用程序.py:

def getSContent():  
return 'some dynamic data'

views.py:

def myFirstView(request):
...py code...

sData = getSContent() <== this line
return render_to_response('template.html',
{'sData': sData, <== this line
...
},
contenxt_instance = RequestContext(request))

def mySecondView(request):
...py code...

sData = getSContent() <== this line
return render_to_response('template.html',
{'sData': sData, <== this line
...
},
contenxt_instance = RequestContext(request))

..等等。

sData = getSContent(){'sData': sData} 在所有这些 View 函数中重复出现。

  • 有什么捷径吗?
  • 我能以某种方式将这个函数绑定(bind)到我的应用程序的特定 View 而无需指定它(标记线)所有的时间?
  • 装饰师能胜任这项工作吗?

请记住,我需要捕获函数的返回并将其进一步传递给模板。

最佳答案

您可以使用 TEMPLATE_CONTEXT_PROCESSORS为此设置

它是可调用对象(函数)的列表。每个函数都接收 request 作为参数,并且应该返回一个 dict,在您的情况下 - return {'sData': getSContent()}

关于python - View 中的 DJANGO 回调函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13085840/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com