0
我有一個看法,以選擇render_to_response:添加環境中使用裝飾
@add_value
my_view(request):
render_to_response('template.html', {'var1' : 'value'})
和裝飾:
def add_value():
def decorator(view_func):
def _decorator(request, *args, **kwargs):
response = view_func(request, *args, **kwargs)
#what code can I put in here to add { 'var2' : 'value' } to render_to_response context?
我想裝飾添加一個密鑰對,所以最終選擇render_to_response將成爲以下:
render_to_response('template.html', {'var1 : 'value', 'var2' : 'value'})
有人知道如何做到這一點?
您不能使用該視圖代碼,因爲在函數返回時渲染已完成。你可以返回一個['TemplateResponse'](https://docs.djangoproject.com/en/dev/ref/template-response/),這將允許你改變上下文,但你可能會更好正如Bernhard的回答所暗示的那樣,使用上下文處理器。 – Aya