i ai un élément de table qui comprend SQLField("year", db.All_years)
web2py - nécessitent une sélection des valeurs déroulantes valider de db
et une table All_years comme suit:
db.define_table("All_years",
SQLField("fromY","integer"),
SQLField("toY","integer")
)
et contraintes sont les suivants:
db.member.year.requires = IS_IN_DB(db, 'All_years.id','All_years.fromY')
Le Le problème est quand je sélectionne une année à partir de la liste déroulante la colonne de la valeur de l'année est l'ID de l'année, pas la valeur de l'année par exemple: si l'année 2009 a db id = 1 la valeur de l'année en db égale = 1 non équa l 2009.
Je ne comprends pas pourquoi.
Les valeurs des années sont affichées correctement dans la liste déroulante mais le scénario incorrect est, il a enregistré l'identifiant de l'année sélectionnée pas le numéro de l'année (e, x: 2009) – Neveen
Vous voulez dire dans votre domaine «année»? C'est normal, vous définissez votre champ comme 'db.All_years' qui est une référence à une autre table, donc l'identifiant. Cela ne devrait pas poser de problème, pour l'afficher par exemple, vous pouvez utiliser 'rows = db (db.mytable.year == db.All_years.id) .select (db.All_years.fromY, db.All_years.toY,. ..) '. – RedGlyph
oui, vous allez bien merci – Neveen