And if you did need list:string, then I think you'd want to set
multiple=True in the IS_IN_SET validator.
On Friday, July 15, 2011 2:05:21 PM UTC-4, Jim S wrote:
> Found this one myself. Don't use 'list:string'. This is just a regular
> string field.
>
> On 7/15/2011 12:55 PM, Jim Steil wrote:
> > Hi
> >
> > Having another problem today with the following:
> >
> > table defined as:
> >
> > priceBackerItem = db.define_table('priceBackerItem',
> > Field('priceBackerItemId', 'id'),
> > Field('priceBackerId', db.priceBacker, required=True,
> > label='Price Backer'),
> > Field('itemType', 'list:string', required=True,
> > label='Item Type'),
> > Field('sequence', 'integer'),
> > Field('description', 'text'),
> > Field('price', 'decimal(9,2)', label='15-Day Price'),
> > Field('subscript', 'text'))
> >
> > priceBackerItem.priceBackerItemId.requires = IS_NOT_EMPTY()
> > priceBackerItem.itemType.requires = IS_IN_SET(['Special Formulation
> > Price Adjustment',
> > 'Medication Price Adjustment'],
> > zero='choose one',multiple=False)
> >
> > Using CRUD, when the update form displays, it never displays the
> > current value of item type. The reason is (my best guess) that when I
> > look in the database (mysql), I see the values as:
> >
> > |Medication Price Adjustment| or
> > |Special Formulation Price Adjustment|
> >
> > ...including the vertical lines in the text.
> >
> > Any advice?
> >
> > -Jim
> >
>