我使用web.py框架,用於創建小型Web pages.I了具有形式有四個複選框領域如下複選框不是用Python web.py工作
home.html的
一個基本的HTML$def with ()
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>Home</title>
</head>
<body>
<form method="POST" action="/checkboxes">
<p>check_1 <input type="checkbox" id="curly_1" value="" name="curly_1"/></p>
<p>check_2 <input type="checkbox" id="curly_2" value="" name="curly_2"/></p>
<p>check_3 <input type="checkbox" id="curly_3" value="" name="curly_3"/></p>
<p>check_4 <input type="checkbox" id="curly_4" value="" name="curly_4"/></p>
<button id="submit" name="submit">Submit</button>
</form>
</body>
</html>
index.py
import os
import sys
import web
from web import form
render = web.template.render('templates/')
urls = (
'/checkboxes', 'Checkboxes',
)
app = web.application(urls, globals())
class Checkboxes:
def POST(self):
i = web.input(groups = {})
print i,">>>>>>>>>>>>"
raise web.seeother('/checkboxes')
if __name__ == "__main__":
web.internalerror = web.debugerror
app.run()
結果:
<Storage {'curly_3': u'', 'submit': u'', 'curly_4': u'', 'curly_1': u'', 'groups': [], 'curly_2': u''}> >>>>>>>>>>>>
於是從HTML視圖我可以看到四個checkbox
領域,我已經檢查了所有的複選框並單擊提交按鈕,現在應該來Checkboxes
類,並應打印輸入(複選框是結果檢查)在post方法中,如上所示。
但結果我得到如上圖所示,
任何人都可以請讓我知道什麼是錯在上面的代碼
怎麼也碰到一些複選框的值空字符串(無結果)選擇?
:感謝您的回覆,我想要的是它應該根據是否選中顯示真或假的值。我們怎樣才能做到這一點? –
通過檢查web.input()返回的字典中是否存在任何給定的複選框,您可以獲得顯式True或False值的等效值。例如,而不是看看是否curly_1被選中這樣的: 如果我[「curly_1」]: 這將無法工作,因爲檢查,只有當curly_1將出席,你可以用這樣的邏輯: 如果i中的'curly_1': ,因爲如果相應的複選框被選中,所需的鍵只會出現在返回的字典中。 –
當然是,但在某處我已經看到了這些值(True或False),所以詢問我們如何在單擊複選框時可以得到True或False值?是否有任何其他方式將值設置爲True或False ,因爲我正在設計一個顯示數據庫中所有記錄的頁面,現在用戶可以通過選中複選框來選擇一些合適的記錄,並單擊「檢索」按鈕(這將創建一個只有選中記錄的csv文件)。因此,我正在嘗試是當用戶通過選中記錄來選擇記錄時,我可以檢查記錄的值是否爲真,並檢索該記錄 –