form.vars.id contains the id or a newly inserted record.

On Aug 15, 2:58 am, Bruno Rocha <rochacbr...@gmail.com> wrote:
> I Just can't figure out how to retrive the inserted id as Row object does
> not have the 'id' key
>
> 2010/8/15 Bruno Rocha <rochacbr...@gmail.com>
>
>
>
> > I am trying to do everything in the lambda, without the need to def the
> > function.
>
> > Tks..
>
> > 2010/8/15 mdipierro <mdipie...@cs.depaul.edu>
>
> > If you define a function you do not need the lambda
>
> >> Field('slug', notnull=True, compute=get_brand),
>
> >> On Aug 15, 2:45 am, Bruno Rocha <rochacbr...@gmail.com> wrote:
> >> > Thank you Massimo! works very well. I just needed to change a little in
> >> > order to get the brand.name instead brand.id in the slug
>
> >> > This:
>
> >> > def get_brand(r):
> >> >     import re
> >> >     brand = db(db.brand.id==r.brand).select().first()
> >> >     slug_regex = re.compile('[^\w-]')
> >> >     return slug_regex.sub('',brand.nome+'-%(model)s-%(year)s'
> >> %r).lower()
>
> >> > and:
>
> >> > Field('slug', notnull=True, compute= lambda r: get_brand(r)),
>
> >> > to get: 'toyota-corolla-2010' as slug  ( I still wants to get the r.idat
> >> > the end)
>
> >> > Tks.
>
> >> > 2010/8/15 mdipierro <mdipie...@cs.depaul.edu>
>
> >> > > import re
> >> > > slug_regex = re.compile('[^\w-]')
>
> >> > > Field('slug',compute=lambda r:
> >> slug_regex.sub('','%(brand)s-%(model)s-%
> >> > > (year)s' %r).lower())
>
> >> > > On Aug 14, 11:12 pm, Bruno Rocha <rochacbr...@gmail.com> wrote:
> >> > > > I need a page slug for the cars in my car shop,
> >> > > > instead havinghttp://.../default/car/2,
> >> > > > I wanthttp://..../default/car/carbrand-carmodel-caryear-id
>
> >> > > > so I defined a table:
>
> >> > > > db.define_table('car'
> >> > > >                          Field('brand', db.brand),
> >> > > >                          Field('model'),
> >> > > >                          Field('year','integer'),
> >> > > >                          Field('slug')
> >> > > >                          )
>
> >> > > > but I do not want the user to fill the "slug" field, so I have to
> >> define
> >> > > > default value to the slug field, concatenating 'brand' + 'model' +
> >> 'year'
> >> > > +
> >> > > > 'slug' joining with a '-',
> >> > > > eg:
> >> > > > id = 2
> >> > > > brand = 'Toyota'
> >> > > > model = 'Corolla'
> >> > > > year = '2010'
> >> > > > slug = 'toyota-corolla-2010-2'
>
> >> > > > how can I get this to be automaticaly filled when inserting? (just
> >> like a
> >> > > > trigger)
>
> >> > --
>
> >> >http://rochacbruno.com.br
>
> > --
>
> >http://rochacbruno.com.br
>
> --
>
> http://rochacbruno.com.br

Reply via email to