"Ah, I see," said the blind man as he picked up his hammer and saw!

I was trying to use 'sale' and also NOT to display it in the grid. I don't 
suppose there's a workaround.

Thanks.

On Monday, 20 January 2014 09:09:30 UTC-5, Massimo Di Pierro wrote:
>
> Here:
>
> SQLFORM.grid(db.products,fields=[db.products.name
> ,db.products.category,db.products.description,db.products.price],
>
> You are asking the grid to select "price" but not "sale", yet the 
> representation of "price" requires the field "sale" which is not retrieved 
> from the database.
> You need to select "sale" as well.
>
> On Monday, 20 January 2014 06:43:38 UTC-6, horridohobbyist wrote:
>>
>> In db.py, I have:
>>
>> db.define_table('products',
>>                 Field('name',length=64,unique=True),
>>                 Field('category',length=64),
>>                 Field('description','text',represent=lambda v, r: XML(v)),
>>                 Field('price','decimal(6,2)',represent=lambda v, r: 
>> '$'+str(v) if r.sale == 'regular' else B('$'+str(v))),
>>                 Field('sale'))
>>
>> In index.html, I have:
>>
>> {{=SQLFORM.grid(db.products,fields=[db.products.name
>> ,db.products.category,db.products.description,db.products.price],
>> maxtextlength=1000,
>> csv=False)
>> }}
>>
>> The traceback says:
>>
>> Traceback (most recent call last):
>>   File "/home/www-data/web2py/gluon/restricted.py", line 212, in restricted
>>     exec ccode in environment
>>   File 
>> "/home/www-data/web2py/applications/HorridoHobbies/views/default/index.html",
>>  line 85, in <module>
>>   File "/home/www-data/web2py/gluon/sqlhtml.py", line 2291, in grid
>>     value = field.represent(value, row)
>>   File "/home/www-data/web2py/applications/HorridoHobbies/models/db.py" 
>> <https://67.213.70.251/admin/default/edit/HorridoHobbies/models/db.py>, line 
>> 94, in <lambda>
>>     Field('price','decimal(6,2)',represent=lambda v, r: '$'+str(v) if r.sale 
>> == 'regular' else B('$'+str(v))),
>> AttributeError: 'Row' object has no attribute 'sale'
>>
>>
>> Thanks.
>>
>>
>> On Monday, 20 January 2014 00:50:39 UTC-5, Massimo Di Pierro wrote:
>>>
>>> When do you get that error? It does not originate in the model. Can you 
>>> show is the controller that you call when you get the error?
>>>
>>> On Sunday, 19 January 2014 21:51:42 UTC-6, horridohobbyist wrote:
>>>>
>>>> I have a database definition:
>>>>
>>>> db.define_table('products',
>>>>                 Field('price','decimal(6,2)',represent=lambda v, r: 1 
>>>> if r.sale == 'regular' else 2),
>>>>                 Field('sale'))
>>>>
>>>> I get an error saying that the 'Row' object has no 'sale' attribute. 
>>>> I'm puzzled. Of course, it has a 'sale' attribute; it's right there in the 
>>>> definition! What gives??
>>>>
>>>>

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