在视图之间传递值django [英] passing values between views django
本文介绍了在视图之间传递值django的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将值从一个表单传递给另一个表单,但是我没有使用表单向导。
我的意见:
I want to pass value from one form to another but i am not using form wizard. my views:
def main_page(request):
#if request.method == 'POST':
#form = jobpostForm_first()
# if request.method == 'POST':
if request.method == 'POST':
#if '_Submit'in request.POST:
#if (form.data['post_type']=='Job'):
form = jobpostForm_first(request.POST)
if (form.data['post_type']=='Job'):
#if form.is_valid():
#form.save()
return render_to_response('portal/job_post.html',{'form':form},context_instance=RequestContext(request))
#else:
# return HttpResponseRedirect('/accounts/login/')
else:
form = jobpostForm_first()
c = {}
c.update(csrf(request))
return render_to_response('portal/job_post.html',{'form':form},context_instance=RequestContext(request))
def next(request):
#post_type= request.GET.get('post_type')
if request.POST['post_type']=='Job': # here it is giving me exception "Key 'post_type' not found in <QueryDict: {}>"
if request.method == 'POST':
form = jobpostForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect('/thanks/')
else:
form = jobpostForm()
else:
return HttpResponseRedirect('/accounts/login/')
c = {}
c.update(csrf(request))
return render_to_response('portal/job_post.html',{'form':form},context_instance=RequestContext(request))
我想把post_type传递给第二个form.and在它的基础上想显示其他形式。任何人都可以告诉我我该怎么做?
I want pass the post_type to 2nd form.and on its basis i want to show other form. Can anyone tell me how can i do this?
推荐答案
def main_page(request):
form = jobpostForm_first()
if request.method == 'POST':
form = jobpostForm_first(request.POST)
if form.is_valid():
post_type = form.cleaned_data['post_type']
if post_type == 'Job':
request.session['post_type'] = post_type
return HttpResponseRedirect('/next/') //---> Is this the correct url for next?
c = {}
c.update(csrf(request))
return render_to_response('portal/job_post.html',{
'form':form
},context_instance=RequestContext(request))
def next(request):
if request.session.get('post_type') == 'Job':
if request.method == 'POST':
form = jobpostForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect('/thanks/')
else:
form = jobpostForm()
else:
return HttpResponseRedirect('/accounts/login/')
c = {}
c.update(csrf(request))
return render_to_response('portal/job_post.html',{
'form':form
},context_instance=RequestContext(request))
这篇关于在视图之间传递值django的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文