Disclaimer: not tested
why don't you just change the action Field to
Field('action', requires=IS_IN_SET({ 0:'Quiet',1:'Running',2:'Fail'}))
On Thursday, December 20, 2012 10:23:07 PM UTC+1, Jim S wrote:
>
> Have you though about adding a table to define the relation between
> 'index' and the text:
>
> db_actions.define_table('actions',
> Field(name, length=20, label='Action'))
>
> Then modify db_events so field index looks like:
>
> Field('index', db.actions, label='Action),
>
> Table actions would then have three records,
>
> Quiet
> Running
> Fail
>
> This should then automatically display the right value - the only problem
> is that it wouldn't guarantee that the index would be 0, 1, and 2. It
> would be whatever the primary key on the actions table worked out to be.
>
> The other way to handle it would be to write a custom validator that
> changed the numeric value as you mentioned. I haven't done that before,
> but heard it isn't that difficult.
>
> -Jim
>
> On Thu, Dec 20, 2012 at 2:45 PM, Christian Espinoza
> <[email protected]<javascript:>
> > wrote:
>
>> My Model for this App
>> db_events.define_table('events',
>> Field('devid', length=15, label='CODE'),
>> Field('type', length=15, label='Type'),
>> Field('index','integer', label='Action'),
>> Field('datetime','datetime', label='Date'),
>> Field('latitude','double', label='Lat'),
>> Field('longitude','double', label='Lon'),
>> Field('velocity','double', label='Vel'),
>> Field('heading', 'integer', label='Dir'),
>> Field('pfm','integer', label='PFM'),
>> Field('age','integer', label='Age'),
>> Field('odometer','double', label='Od')
>> )
>> --
>>
>>
>>
>>
>
>
--