我想知道制作多选列表的唯一方法是在两个表之间有桥接表?
我有表格(成员、语言、成员语言)--> 每个成员都有一种或多种语言我制作了一个多选语言列表,并且我选择了它工作正常的多语言。
但是我想在区域表中做同样的事情,但是这里的成员只有一个区域,所以当我从区域的多选列表中选择多个区域时,它会导致错误“值不在数据库中!”,当我选择区域列表中的一个值可以正常工作。
我只想拥有一个区域列表,我可以选择多个区域来生成满足所选区域的报告,我不会将任何选定区域插入数据库,我只会将它们用于我的查询。
我怎样才能做到这一点??
我的代码:
数据库部分
db.define_table("region_tmp",
SQLField("name","string")) db.region_tmp.name.requires = IS_IN_DB(db,'region_tmp.name',multiple=True)
形式部分:
form=SQLFORM(SQLDB(None).define_table('myform',
db.region_tmp.name,,submit_button="Generate Report")
当我从区域列表中选择多个区域时,我的代码的输出是区域的多选列表表单显示“值不在数据库中!” 区域列表下的消息,当我从区域列表中选择一个区域时,它工作正常并生成报告。
提前致谢