Possible Issue, this might be due to the dal changes (or it could be me?): I'm running a variation of Bruno's Modelless App (and I tried his out of the box) https://github.com/rochacbruno/web2py_model_less_app , and I get:
AttributeError: 'DataBase' object has no attribute '_LAZY_TABLES' On Sunday, August 26, 2012 8:37:16 AM UTC+12, Massimo Di Pierro wrote: > > Exactly. > > mytable.myfield.set_attributes(readable=True,writable=True) > > is just a shortcut for > > mytable.myfield.readable=True > mytable.myfield.writable=True > > without it the lambda notation would not be very usable. > > On Saturday, 25 August 2012 11:50:10 UTC-5, Jonathan Lundell wrote: >> >> On 23 Aug 2012, at 7:25 AM, Massimo Di Pierro <[email protected]> >> wrote: >> > So now in trunk you can do: >> > >> > db = DAL(lazy_tables=True) >> > db.define_table('person',Field('name'),Field('age','integer'), >> > on_define=lambda table: [ >> > >> table.name.set_attributes(requires=IS_NOT_EMPTY(),default=''), >> > >> table.age.set_attributes(requires=IS_INT_IN_RANGE(0,120),default=30), >> > ]) >> > >> > and the attributes will be set lazily. This is a good idea! Thanks >> Jonathan. >> > >> >> Clear something up for me, please. I was a little confused before about >> how this was implemented, but I've read the code and it looks like what I >> proposed. What I'm not following is the role of set_attributes. Is it >> simply to facilitate the lambda? Is this equivalent? >> >> def on_define(table): >> table.name.requires = IS_NOT_EMPTY() >> table.name.default = '' >> table.age.requires = IS_INT_IN_RANGE(0,120) >> table.age.default = 30 >> >> db = DAL(lazy_tables=True) >> db.define_table('person', Field('name'), Field('age','integer'), >> on_define=on_define) >> > --

