No, passing a table object into db.define_table() only copies the tables 
fields, not its other attributes. Anyway, if you want to set the default 
value for a field, you would do it using the "default" argument to Field():

standard_fields = db.Table(db, 'standard_fields',
    Field('created_on', 'datetime', default=request.now))

You might also want to set writable=False.

Anthony

On Tuesday, October 1, 2013 11:26:08 PM UTC-4, User wrote:
>
> Using table inheritance to define a common set of fields. Given the 
> following code:
>  
> standard_fields = db.Table(db, 'standard_fields',
>     Field('created_on', 'datetime'),
>  )
> standard_field._before_insert.append(lambda fields: fields['created_on'] 
> =request
> .now)
>  
> db.define_table('payment', Field('amount', 'double'), standard_fields)
>
> will table payment inherit the _before_insert (or _before_update) 
> behavior?  I'm trying this but I think it may not inherit.  If it doesn't, 
> is the only option to specify the ._before_insert for each table? I want 
> to add this to a number of tables.
>  
>

-- 
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/groups/opt_out.

Reply via email to