So, that should allow me to sort though shouldn't it?
On Apr 12, 2013 4:38 PM, "Anthony" <abasta...@gmail.com> wrote:

> Well, a change was just made in trunk to allow '%(tablename.fieldname)s'
> notation, but it looks like the query retains only the fields in the main
> table (db.productSite in this case) anyway, so I guess that won't help. So
> instead, maybe:
>
> lambda r: db(db.product.productId == r.productId).select().first().
> productName
>
> Anthony
>
> On Friday, April 12, 2013 1:56:34 PM UTC-4, Jim S wrote:
>>
>>     requires = 
>> IS_IN_DB(db((~db.productSite.**productSiteId.belongs(**currentItems))
>> &
>>                            (db.productSite.**availableAddon==True) &
>>                            (db.productSite.siteId==**workorder.siteId) &
>>                            (db.product.productId==db.**
>> productSite.productId)),
>>                         db.productSite.productSiteId,
>>                         lambda r: r.product.productName, zero='..')
>>
>> ...gives me...
>>
>> Traceback (most recent call last):
>>   File "C:\dev\web2py\gluon\**restricted.py", line 212, in restricted
>>
>>     exec ccode in environment
>>   File 
>> "C:/dev/web2py/applications/**infocenter/controllers/**applications.py" 
>> <http://10.10.2.34:8000/admin/default/edit/infocenter/controllers/applications.py>,
>>  line 4291, in <module>
>>
>>   File "C:\dev\web2py\gluon\globals.**py", line 194, in <lambda>
>>
>>     self._caller = lambda f: f()
>>
>>   File "C:\dev\web2py\gluon\tools.py"**, line 2976, in f
>>
>>     return action(*a, **b)
>>   File 
>> "C:/dev/web2py/applications/**infocenter/controllers/**applications.py" 
>> <http://10.10.2.34:8000/admin/default/edit/infocenter/controllers/applications.py>,
>>  line 864, in workorderBom
>>
>>     _formname='addonForm')
>>   File "C:\dev\web2py\gluon\sqlhtml.**py", line 1599, in factory
>>
>>     **attributes)
>>   File "C:\dev\web2py\gluon\sqlhtml.**py", line 1113, in __init__
>>
>>     inp = self.widgets.options.widget(fi**eld, default)
>>
>>   File "C:\dev\web2py\gluon\sqlhtml.**py", line 252, in widget
>>
>>     options = requires[0].options()
>>   File "C:\dev\web2py\gluon\**validators.py", line 546, in options
>>
>>     self.build_set()
>>   File "C:\dev\web2py\gluon\**validators.py", line 543, in build_set
>>
>>     self.labels = [self.label(r) for r in records]
>>
>>   File 
>> "C:/dev/web2py/applications/**infocenter/controllers/**applications.py" 
>> <http://10.10.2.34:8000/admin/default/edit/infocenter/controllers/applications.py>,
>>  line 853, in <lambda>
>>
>>     lambda r: r.product.productName, zero='..')
>> AttributeError: 'Row' object has no attribute 'product'
>>
>>
>>
>> On Fri, Apr 12, 2013 at 12:10 PM, Jim Steil <ato....@gmail.com> wrote:
>>
>>> Shoot, should have thought of that.
>>>
>>> Will try when I get back to the office.
>>>
>>> Jim
>>>  On Apr 12, 2013 12:04 PM, "Anthony" <abas...@gmail.com> wrote:
>>>
>>>> It probably should work, but for some reason, the code converts the Row
>>>> to a dict before doing the string formatting, and that breaks for Rows
>>>> involving joins. For now, you can use a lambda instead:
>>>>
>>>> lambda r: r.product.productName
>>>>
>>>> Anthony
>>>>
>>>> On Friday, April 12, 2013 12:38:09 PM UTC-4, Jim S wrote:
>>>>>
>>>>> Tried that already but got the same error.
>>>>>
>>>>> Jim
>>>>>  On Apr 12, 2013 11:32 AM, "Anthony" <abas...@gmail.com> wrote:
>>>>>
>>>>>> Since you are joining tables, you might need to use the
>>>>>> "tablename.fieldname" format to refer to the field in question. Does
>>>>>> '%(product.productName)s' work (assuming "productName" is in the 
>>>>>> db.product
>>>>>> table)?
>>>>>>
>>>>>> Anthony
>>>>>>
>>>>>> On Friday, April 12, 2013 11:59:59 AM UTC-4, Jim S wrote:
>>>>>>>
>>>>>>>     requires = IS_IN_DB(db((~db.productSite.**p****
>>>>>>> roductSiteId.belongs(**currentIt****ems)) &
>>>>>>>                            (db.productSite.**availableAddo****n==True)
>>>>>>> &
>>>>>>>                            
>>>>>>> (db.productSite.siteId==**worko****rder.siteId)
>>>>>>> &
>>>>>>>                            (db.product.productId==db.**pro****
>>>>>>> ductSite.productId)),
>>>>>>>                         db.productSite.productSiteId,
>>>>>>>                         '%(productName)s', zero='..')
>>>>>>>
>>>>>>> I get a trace back with this.  If I pull out the '%(productName)s'
>>>>>>> it works.   But, I want to specify the field name to display being a 
>>>>>>> field
>>>>>>> in the table linked by the 4 'anded' query.
>>>>>>>
>>>>>>> Help?
>>>>>>>
>>>>>>> -Jim
>>>>>>>
>>>>>>  --
>>>>>>
>>>>>> ---
>>>>>> You received this message because you are subscribed to a topic in
>>>>>> the Google Groups "web2py-users" group.
>>>>>> To unsubscribe from this topic, visit https://groups.google.com/d/**
>>>>>> to**pic/web2py/vb0268kC_mc/**unsubsc**ribe?hl=en<https://groups.google.com/d/topic/web2py/vb0268kC_mc/unsubscribe?hl=en>
>>>>>> .
>>>>>> To unsubscribe from this group and all its topics, send an email to
>>>>>> web2py+un...@**googlegroups.com.
>>>>>> For more options, visit 
>>>>>> https://groups.google.com/**grou**ps/opt_out<https://groups.google.com/groups/opt_out>
>>>>>> .
>>>>>>
>>>>>>
>>>>>>
>>>>>  --
>>>>
>>>> ---
>>>> You received this message because you are subscribed to a topic in the
>>>> Google Groups "web2py-users" group.
>>>> To unsubscribe from this topic, visit https://groups.google.com/d/**
>>>> topic/web2py/vb0268kC_mc/**unsubscribe?hl=en<https://groups.google.com/d/topic/web2py/vb0268kC_mc/unsubscribe?hl=en>
>>>> .
>>>> To unsubscribe from this group and all its topics, send an email to
>>>> web2py+un...@**googlegroups.com.
>>>> For more options, visit 
>>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out>
>>>> .
>>>>
>>>>
>>>>
>>>
>>  --
>
> ---
> You received this message because you are subscribed to a topic in the
> Google Groups "web2py-users" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/web2py/vb0268kC_mc/unsubscribe?hl=en.
> To unsubscribe from this group and all its topics, send an email to
> web2py+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 

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