use*_*324 3 django django-templates django-models django-forms django-views
我想在 Django 中使用类似于 render_to_response 函数的东西,但使用 HttpResponseRedirect。
这是我的views.pyrender_to_response:
def somefunction(request):
return render_to_response('myTemplate.html',{'error': "error"})
Run Code Online (Sandbox Code Playgroud)
mytemplate.html
{% if error %}
do something
{% endif %}
Run Code Online (Sandbox Code Playgroud)
您可以传递 GET 变量:
/mytemplate?variable1="variable_1"
Run Code Online (Sandbox Code Playgroud)
您还可以使用消息框架
from django.contrib import messages
def view(request):
# your code
messages.error(request, "ERROR")
HttpResponseRedirect("/mytemplate")
Run Code Online (Sandbox Code Playgroud)
或者也许您可以添加一个会话
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())
Run Code Online (Sandbox Code Playgroud)