2
我有一个表构件包括SQLField("year", db.All_years)
的web2py - 需要选择下拉值验证从分贝
和All_years表如下所示:
db.define_table("All_years",
SQLField("fromY","integer"),
SQLField("toY","integer")
)
和约束是:
db.member.year.requires = IS_IN_DB(db, 'All_years.id','All_years.fromY')
的问题是,当我从下拉列表中选择一年时,年份列的值是年份的id,而不是年份值。例如:如果2009年有db id = 1,那么db在db = 1时的值不等于l 2009.
我不明白为什么。
年份值正确显示为下拉列表,但不正确的场景是,它保存了所选年份的编号而不是年份编号(e,x:2009) – Neveen 2009-10-18 14:01:34
您的意思是在您的字段'year'?这很正常,你把你的字段定义为'db.All_years',它是对另一个表的引用,因此是id。这应该不是问题,要显示它,例如,您可以使用'rows = db(db.mytable.year == db.All_years.id).select(db.All_years.fromY,db.All_years.toY ,. ..)'。 – RedGlyph 2009-10-18 14:08:08
是的,你没事,谢谢 – Neveen 2009-10-18 14:14:07