@Simone,

Is that true unlazy... if the .requires = Something is place in controller
file??

I mean, models/files are parsed before controller and if ".requires =
something" is in controller the model should be unlazy anyway...

Richard

On Wed, Apr 15, 2015 at 2:37 PM, Niphlod <niph...@gmail.com> wrote:

> putting
>
> db.tablename.fieldname.requires = VALIDATOR()
>
> doesn't do anything BUT if you have lazy_tables turned on, this syntax
> would trigger the "unlazyification" of the table.
> "Minus points" (the reverse concept of "bonus points") for
>
> db.tablename.fieldname.requires = IS_IN_DB(db.othertable)
>
> syntax that will trigger the "unlazyification" of both tables.
>
> For all intents and purposes, a fixed validator that needs to be there in
> every piece of code interacting with that field is better placed in the
> table definition itself, i.e.
>
> db.define_table('tablename', Field('fieldname', requires=VALIDATOR()))
>
> in this way, when you enable lazy_tables the "unlazyification" would only
> be triggered at the first access of db.tablename throughout your code.
>
> Then again, if for some strict requirement you aren't able to define a
> validator "inside" the table definition, again for the solely purposes of
> lazy_tables, you should use the on_define argument
>
> All of this is explained in the book at chapter 6 (the "on_define" is here
> <http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#on_define>)
>
>
> On Wednesday, April 15, 2015 at 7:50:34 PM UTC+2, Alex Glaros wrote:
>>
>> Here is a regular requires is_in_db statement:
>>
>>
>> gov_org_query = (db.Organization.organizationPrimaryTypeID ==1)
>>
>> db.GovOrgJurisdiction.organizationID.requires =
>> IS_IN_DB(db(gov_org_query), 'Organization.id', 
>> '%(organizationFullName)s',zero=T('choose
>> one'))
>>
>>
>> is it more efficient to put these two in the controller so they are
>> called only when used?
>>
>> I don't understand if they would get executed needlessly if placed in the
>> model if the function that needs them is not used for many sessions
>>
>> thanks
>>
>> Alex Glaros
>>
>  --
> Resources:
> - http://web2py.com
> - http://web2py.com/book (Documentation)
> - http://github.com/web2py/web2py (Source code)
> - https://code.google.com/p/web2py/issues/list (Report Issues)
> ---
> You received this message because you are subscribed to the Google Groups
> "web2py-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to web2py+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to