web2py-選択したドロップダウン値がdbから検証する必要があります

StackOverflow https://stackoverflow.com/questions/1584909

  •  22-09-2019
  •  | 
  •  

質問

私は含むテーブルメンバーを持っています SQLField("year", db.All_years)

そして、次のように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')

問題は、ドロップダウンから1年を選択すると、年の列の値は年のIDであり、年の値ではありません。

理由がわかりません。

役に立ちましたか?

解決

あなたのプロジェクトは順調に進んでいると思います!

バリデーターはです IS_IN_DB(dbset, field, label). 。だからあなたは試してみるべきです:

db.member.year.requires = IS_IN_DB(db, 'All_years.id', '%(fromY)d')

ドロップダウンリストに正しいラベルを持つこと。

今、あなたのテーブルから、それはあなたがこれを使用することができるように、次のように使用できます。

db.member.year.requires = IS_IN_DB(db, 'All_years.id', '%(fromY)d to %(toY)d')

たとえば、「1980年から1985年」などが表示されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top