亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在Django中在一個頁面上處理多個表單的正確方法

在Django中在一個頁面上處理多個表單的正確方法

慕勒3428872 2019-07-25 15:59:08
在Django中在一個頁面上處理多個表單的正確方法我有一個期待兩種形式的模板頁面。如果我只使用一個表單,那么就像這個典型的例子一樣好:if request.method == 'POST':     form = AuthorForm(request.POST,)     if form.is_valid():         form.save()         # do something.else:     form = AuthorForm()但是,如果我想使用多個表單,我如何讓視圖知道我只提交其中一個表單而不是另一個表單(即它仍然是request.POST但我只想處理提交的表單事情)嗎?這是該解決方案基于這樣的答案expectedphrase和bannedphrase是不同形式和不同的提交按鈕的名稱expectedphraseform和bannedphraseform是形式。if request.method == 'POST':     if 'bannedphrase' in request.POST:         bannedphraseform = BannedPhraseForm(request.POST, prefix='banned')         if bannedphraseform.is_valid():             bannedphraseform.save()         expectedphraseform = ExpectedPhraseForm(prefix='expected')     elif 'expectedphrase' in request.POST:         expectedphraseform = ExpectedPhraseForm(request.POST, prefix='expected')         if expectedphraseform.is_valid():             expectedphraseform.save()          bannedphraseform = BannedPhraseForm(prefix='banned')else:     bannedphraseform = BannedPhraseForm(prefix='banned')     expectedphraseform = ExpectedPhraseForm(prefix='expected')
查看完整描述

3 回答

?
慕婉清6462132

TA貢獻1804條經驗 獲得超2個贊

你有幾個選擇:

  1. 在兩個表單的操作中放入不同的URL。然后你將有兩個不同的視圖函數來處理兩種不同的形式。

  2. 從POST數據中讀取提交按鈕值。您可以判斷單擊了哪個提交按鈕:如何構建多個提交按鈕django表單?


查看完整回答
反對 回復 2019-07-25
  • 3 回答
  • 0 關注
  • 2923 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號