2010-04-22 55 views
0

我想通過表單的字段值到下一個頁面(模板)用戶後提交頁面,本場可以是用戶名,可考慮以下設置Django |如何表單字段添加到URL配置

def form_submit(request): 
    if request.method == 'POST': 
     form = UsersForm(request.POST) 
     if form.is_valid(): 
      cd = form.cleaned_data 
      try: 
       newUser = form.save() 
       return HttpResponseRedirect('/mysite/nextpage/') 
      except Exception, ex: 
       return HttpResponse("Error %s" % str(ex)) 
     else: 
      return HttpResponse('Error') 

「 nextpage「是用戶提交表單後呈現的模板,所以我想知道如何將表單的字段(用戶名)附加到url並從視圖中獲取該值以便將其傳遞到下一頁。

謝謝。

回答

2

變化控制器重定向到包含用戶名(我的字段名猜測):

def form_submit(request): 
    if request.method == 'POST': 
     form = UsersForm(request.POST) 
     if form.is_valid(): 
      cd = form.cleaned_data 
      try: 
       newUser = form.save() 
       return HttpResponseRedirect('/mysite/nextpage/{0}/'.format(newUser.UserName) 
      except Exception, ex: 
       return HttpResponse("Ane apoi %s" % str(ex)) 
     else: 
      return HttpResponse('Error') 

然後,你將需要一個新的控制器:

def user_redirected_here(request, username): 
    #do something 

最後加入類似這對你的urls.py路由到新的視圖:

urlpatterns = patterns('', 
    (r"^nextpage/.+$", user_redirected_here), 
) 
+0

我得到這個錯誤,user_redirected_here()需要剛好2個參數(1給出) – Switch 2010-04-23 06:00:06

+0

算出它的URL配置應該是(r'^ nextpage /(?P \ w +)/ $',views.user_redirected_here) – Switch 2010-04-23 06:50:13

相關問題