2012-10-24 67 views
1

我缺少一些相當簡單的東西,但無法弄清楚如何正確讀取db.select查詢以在表單參數中使用。Web Py |如何使用db.select查詢設置form.Dropdown參數

示例代碼:

class index: 
    form = web.form.Form(form.Dropdown(name='option',args=[])) 

    def GET(self): 
      dbresult = db.select('test') 
      options = db.select('test',what='name',group='name') 
      form = self.form() 
      form.option.args = options 
      return render.index(dbresult,form) 

這個回報(存儲{ '名':u'google'})的形式參數的個數之一。我想要的只是谷歌回讀。我知道我缺少簡單的東西,任何指針?謝謝。

回答

0

試試這個:

class index: 
    form = web.form.Form(form.Dropdown(name='option',args=[])) 

    def GET(self): 
      dbresult = db.select('test') 
      options = db.select('test',what='name',group='name') 
      form = self.form() 
      form.option.args = [(o.name, o.name) for o in options] 
      return render.index(dbresult,form) 

Dropdown ARGS應該是那份名單列表。在(o.name, o.name)第一個是選項的價值(我通常將其設置爲列的ID),第二個是它的描述。如果它們相同,那麼[o.name for o in options]也應該工作。

+0

超棒的男人,使完美的感覺。不知何故,我完全錯過了,謝謝! – DrewK