我是新來的Python,我試圖使用web2py製作一個簡單的公告板系統應用程序。我正在試圖在某個董事會中添加帖子,並通過在帖子表中添加以下字段來鏈接帖子和董事會:字段('board_id',db.board)。當我嘗試在特定的電路板內創建一個帖子時,它給了我一個錯誤:「OperationalError:沒有這樣的列:board.id」。我對create_posts代碼:python數據庫錶鏈接
def add_post():
board = db.board(request.args(0))
form = SQLFORM(db.post)
db.pst.board_id.default = db.board.id
if form.process().accepted:
session.flash = T('The data was inserted')
redirect(URL('default', 'index'))
return dict(form=form, board=board)
當我嘗試做{{=板}},顯示在一定的板職位的頁面上,我得到行{「名」:「你好」,「ID」 :1L,'pst':Set(pst.board_id = 1),'description':'hi'}所以我知道它在數據庫中。但是當我爲「添加帖子」表單頁面做同樣的事情時,它會顯示「board:None」。我非常困惑,請指向正確的方向!
'db.board(request.args中(0))''從其db.board'返回記錄'id'等於'request.args中(0) )'或'無',如果沒有該'id'的記錄。所以,對於'request.args(0)'沒有值,或者它的值與你的任何記錄ID都不匹配。據推測,您正在生成鏈接到「add_post」,其中包含一個記錄ID作爲第一個URL arg。你如何生成這些鏈接? – Anthony