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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.