Web2py 比较 request.vars 元素的一部分
Web2py comparing part of a request.vars element
我有一个带有 table 的表单,其中的行包含带有 _names 和附加 ID 的 SELECT,如下所示:
TD_list.append(TD(SELECT(lesson_reg_list, _name='lesson_reg_' + str(student[4]))))
提交表单后,我想提取学生[4] 值 和 request.vars.lesson_reg_student[4] 持有的值。
我试过类似的方法:
for item in request.vars:
if item[0:9] == "lesson_reg":
enrolment_id = int(item[10:])
code = request.vars.item
我还尝试通过以下方式将 request.vars 视为字典:
for key, value in request.vars:
if key[0:9] == "lesson_reg":
enrolment_id = int(key[10:])
code = value
但后来我得到了 'too many values to unpack'。当 request.vars 项目名称的最后部分可以是任意数字加上项目名称本身的子字符串时,如何检索该项目的值?
在此先感谢您对我的帮助。
在Python中,切片时,结束索引是排除,所以你的两个切片应该是0:10
和0:11
。为了简化,您还可以使用 .startswith
作为第一个:
for item in request.vars:
if item.startswith('lesson_reg'):
enrolment_id = int(item[11:])
code = request.vars.item
我有一个带有 table 的表单,其中的行包含带有 _names 和附加 ID 的 SELECT,如下所示:
TD_list.append(TD(SELECT(lesson_reg_list, _name='lesson_reg_' + str(student[4]))))
提交表单后,我想提取学生[4] 值 和 request.vars.lesson_reg_student[4] 持有的值。
我试过类似的方法:
for item in request.vars:
if item[0:9] == "lesson_reg":
enrolment_id = int(item[10:])
code = request.vars.item
我还尝试通过以下方式将 request.vars 视为字典:
for key, value in request.vars:
if key[0:9] == "lesson_reg":
enrolment_id = int(key[10:])
code = value
但后来我得到了 'too many values to unpack'。当 request.vars 项目名称的最后部分可以是任意数字加上项目名称本身的子字符串时,如何检索该项目的值?
在此先感谢您对我的帮助。
在Python中,切片时,结束索引是排除,所以你的两个切片应该是0:10
和0:11
。为了简化,您还可以使用 .startswith
作为第一个:
for item in request.vars:
if item.startswith('lesson_reg'):
enrolment_id = int(item[11:])
code = request.vars.item