0

我想在django中使用類似於render_to_response函數但使用HttpResponseRedirect的函數。Django HttpResponseRedirect將變量傳遞給模板並讀取它

這裏是我的views.py選擇render_to_response爲:

高清somefunction(請求):

選擇render_to_response回報( 'myTemplate.html',{ '錯誤': 「錯誤」})

mytemplate.html

{% if error %}do something{% endif %}

回答

1

你可以通過GET變量:

/mytemplate?variable1="variable_1" 

您還可以使用messages framework

from django.contrib import messages 

def view(request): 
    # your code 
    messages.error(request, "ERROR") 
    HttpResponseRedirect("/mytemplate") 

或者你可以添加一個session

def view(request): 
    request.session['error'] = "ERROR" 
    return HttpResponseRedirect("/mytemplate") 


def my_template(request): 
     if request.session.has_key('error'): 
      error = request.session.get('error') 
      del request.session['error'] 
     return render(request, "myTemplate.html", locals()) 
+0

謝謝。這正是我正在尋找的:) – user3130324

+0

不客氣:) –

相關問題