Python Web2py-尝试从没有';对于';句子
我正在尝试编辑用户的组成员资格,我的控制器中有:Python Web2py-尝试从没有';对于';句子,python,web2py,Python,Web2py,我正在尝试编辑用户的组成员资格,我的控制器中有: def change_membership(): if request.vars.id: row = db(db.auth_membership.user_id == request.vars.id).select() id = row[0].id form = SQLFORM(db.auth_membership, id,
def change_membership():
if request.vars.id:
row = db(db.auth_membership.user_id == request.vars.id).select()
id = row[0].id
form = SQLFORM(db.auth_membership,
id,
fields=['group_id'],
_action=URL()
)
if form.process().accepted:
...redirect back to user list
if form.errors:
response.flash = 'form has errors'
return dict(form=form)
但它不起作用,我得到一个:
列表索引超出范围
我知道只有一排,但我不明白为什么它看起来是空的
提前感谢克里斯蒂安太棒了 非常感谢安东尼和马西莫 现在一切都在使用request.get_vars.id而不是request.vars.id进行工作 参考: 2012/8/22安东尼写道: 对注意,web2py在request.GET_变量中存储GET变量,在request.POST_变量中存储POST变量。它在request.vars中存储GET和POST变量。如果get_变量和post_变量都具有相同名称的变量,则会将它们的值放入request.vars中的列表中。只需将代码更改为使用request.get_vars.id而不是request.vars.id 2012/8/22马西莫·迪·皮耶罗写道:
您有两个id字段。一个在request.get_vars.id(从url)中,一个在request.post_vars.id(从表单提交)中。request.vars.id设置在哪里,值是如何确定的?它可能被添加到用于访问此操作的URL的查询字符串中。