Thanks Anthony. I tried this with pydal only, which does work. 
However, it fails if I import anything from gluon. 

On Monday, October 3, 2016 at 6:41:53 PM UTC+2, Anthony wrote:
>
> I cannot reproduce. Here is what I get using your exact code:
>
> In [2]:
> dbt = DAL('sqlite:memory')
>
> In [4]:
> dbt.define_table('test',
>                  Field('x', 'float'),
>                  Field('y', 'float', compute=lambda r: r['x'] * 2))
>
> Out[4]:
> <Table test (id,x,y)>
>
> In [5]:
> dbt.test.validate_and_insert(x=1)
>
> Out[5]:
> <Row {'errors': {}, 'id': 1L}>
>
> In [6]:
> dbt.test(1)
>
> Out[6]:
> <Row {'x': 1.0, 'id': 1L, 'y': 2.0}>
>
>
>
> Anthony
>
> On Monday, October 3, 2016 at 1:24:46 AM UTC-4, Yang wrote:
>>
>> Hello, 
>>
>> It seems that validate_and_insert() doesn't work for compute field. For 
>> example,
>>
>> db.define_table('test',
>>                           Field('x', 'float'),
>>                           Field('y', 'float', compute=lambda r: r['x'] * 
>> 2))
>>
>> db.test.validate_and_insert(x=1) gives <Row {'x': 1.0, 'id': 1L, 'y': 
>> None}>
>> db.test.insert(x=1) gives <Row {'x': 1.0, 'id': 1L, 'y': 2.0}>
>>
>> Is this expected? Thank you in advance.
>>
>

-- 
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