[英]How can I access the form submit button value in Django?
我有一個 Django 項目,在一個頁面上,有多個表單(在不同的標簽中)可以提交以產生不同的效果。 在所有情況下,我都希望用戶被重定向回同一頁面,因此我在我的視圖中使用提交表單然后重定向到原始頁面的模式。 至少在一種情況下,兩個表單之間的唯一區別是提交按鈕的值。
在我看來,我有代碼(這是我的視圖函數第一次訪問
request.POST<\/code> ):
if request.POST['submit']=='Add':
#code to deal with the "Add" form
Submit<\/code>是一個 HTML 表單結構...您必須使用表單對象的名稱屬性,如下所示...在您的模板中:
<form>
...
<input type="submit" name="list" value="List Objects" />
</form>
<form>
...
<input type="submit" name="do-something-else" value="Do Something Else" />
</form>
要記住一件事以防止混淆。 如果表單中只有一個按鈕,則不會顯示提交按鈕的
name<\/code> 。
#template.html
<form action="..." method="post">
<input type="submit" name = "first_button" value="Add">
</form>
#view.py
...
'first_button' in request.POST #False
我有點晚了,但這是解決方案
您面臨的問題<\/strong>
您正在嘗試獲取按鈕名稱,但獲取按鈕的初始值不正確。
HTML 代碼<\/strong>
Python 代碼\/View.py<\/strong>
解決方案<\/strong>
如果存在,首先在 request.POST 字典中找到按鈕名稱,然后獲取它們的值。
HTML 代碼<\/strong>
添加按鈕的名稱及其值。
視圖.py<\/strong>
您可以在 request.POST 字典中找到按鈕名稱
額外的東西<\/strong>
我們在一個頁面上有兩個表單。
第一種形式有 2 個按鈕,主題<\/strong>名稱相同,但值不同fav_HTML<\/strong>和fav_CSS<\/strong> 。
第二種形式也有 2 個按鈕,同名tutorials<\/strong>但值不同Tutorials_HTML<\/strong>和Tutorials_CSS<\/strong> 。
視圖.py<\/strong>
我們可以處理不同的表單,檢查單擊了哪個按鈕,然后獲取它們的值並做一些事情。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.