Thank you Anthony. Works perfectly in a SQLFORM.grid. The values get displayed as expected.
But outside of the grid for something like this persons = db(db[table].id == 1).select() person=persons[0][column] the stored values get displayed not its representation. How can I get the representation of the stored value here? On Monday, April 16, 2018 at 1:55:18 AM UTC+2, Anthony wrote: > > The validator controls the widget used in forms but not the format in the > grid -- for the latter, use the "represent" attribute: > > represent=lambda v, r: GENDER[v] > > Anthony > > On Sunday, April 15, 2018 at 4:47:27 AM UTC-4, xelomac wrote: >> >> Consider the following example. >> >> Model: >> >> GENDER = {"male": T("Mr.", lazy=False), >> "female": T("Ms.", lazy=False)} >> >> db.define_table('person', >> Field('gender', label = T('Salutation'), requires=IS_IN_SET(GENDER)), >> Field('first_name', label = T('First Name'), >> Field('last_name', label = T('Last Name')), >> format = '%(last_name)s') >> >> In a SQLFORM.grid I want to represent the field gender by its translated >> label not by its value. How can I achieve this? >> >> -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.