Web2Py 获取值

Web2Py GET value

您好,我正在尝试从 request.args(0) 获取值并在提交表单时使用它。

我希望 'game_id' 自动分配 args 值(这是游戏在我的游戏中的唯一 ID table。

def review():
getId = db.games(request.args(0)) or redirect(URL('default', 'index'))
formReview = SQLFORM(db.reviews,fields = ['game_id','title','review']).process()
db.reviews.game_id.default= request.args(0)
formReview.vars.game_id = request.args(0)
if formReview.accepted: redirect(URL('index'))
return dict(formReview=formReview, getId=getId)


db.define_table('reviews',
            Field('title',requires=IS_NOT_EMPTY()),
            Field('review','text',requires=IS_NOT_EMPTY()),
            Field('game_id', 'reference games'))

我认为行:

formReview.vars.game_id = request.args(0)

会预先填充该字段,但它不起作用。

预填充表单的最可靠方法是设置字段的默认值(必须在创建表单之前完成):

def review():
    getId = db.games(request.args(0)) or redirect(URL('default', 'index'))
    db.reviews.game_id.default = request.args(0)
    formReview = SQLFORM(db.reviews, fields=['game_id','title','review']).process()
    if formReview.accepted: redirect(URL('index'))
    return dict(formReview=formReview, getId=getId)