db.define.table('advanced'
                Field('name1',requires=IS_IN_DB(db,'basic.name1')),

On Nov 10, 1:49 pm, andrej burja <andrej.bu...@gmail.com> wrote:
> hi
>
> is it possible to create a text field in table 'advandced' containing
> 'name1' (no reference, just characters)
>
> andrej
>
> On 10 nov., 15:22, mdipierro <mdipie...@cs.depaul.edu> wrote:
>
> > ERRATA:
>
> > do this:
>
> > db.define.table('basic'
> >                 Field('name1')
> >                 ...,format='%(name1)s')
>
> > db.define.table('advanced'
> >                 Field('name2',db.basic)
> >                 ...,format=lambda row: db.basic(row.name2).name1)
>
> > # db.advanced.name.requires=IS_IN_DB(db,'basic.id','%(name1)s')
>
> > db.define.table('data'
> >                 Field('something',db.advanced)
> >                 ...)
>
> > but this is going to be SOOO slow. You are making two select per each
> > row in the dropdown.
>
> > On Nov 4, 8:59 am, mdipierro <mdipie...@cs.depaul.edu> wrote:
>
> > > do this:
>
> > > db.define.table('basic'
> > >                 Field('name1')
> > >                 ...,format='%(name1)s')
>
> > > db.define.table('advanced'
> > >                 Field('name2',db.basic)
> > >                 ...,format='%(name2)s')
>
> > > # db.advanced.name.requires=IS_IN_DB(db,'basic.id','%(name1)s')
>
> > > db.define.table('data'
> > >                 Field('something',db.advanced)
> > >                 ...)
>
>

Reply via email to