Hi,
I need a SQLFORM with a special drop-box with a subset of values.
This is a simplified example, the whole problem is a little bit more
complex: Let's make two tables:
db.define_table('colors',
Field('color'),
Field('gr'), # group
format='%(color)s',
)
db.define_table('person',
Field('name'),
Field('color','list:reference colors'),
)
I fill the first table:
def newcolors():
db.colors.truncate()
db.colors.bulk_insert([
{'color':'yellow', 'gr':'B'},
{'color':'green', 'gr':'A'},
{'color':'blue', 'gr':'A'},
{'color':'red', 'gr':'B'},
{'color':'white', 'gr':'B'},
{'color':'black', 'gr':'B'},
])
And now there is the SQLFORM for a new person:
def newperson():
form=SQLFORM(db.person)
return dict(form=form)
The form contains a SELECT/OPTION multiple drop-box for the colors *black to
yellow.*
My question: is it possible to have three different forms
- a drop-box which contains only the colors of group A (green, blue)
- a drop-box which contains only the colors of group B (yellow, red,
white, black)
- a drop-box with all color
Something like
form=SQLFORM(db.person, colors_for_select=[1,2])
Regards,
Martin