In case .grid() is a requirement and schema is frozen, the best option
would be to make the union in the backend (postgres) with a view (index it
as describe in the SO explain for better performance) and create a db
models for the view in web2py which it can only be selected as it is a
view. I am doing this for complexe query in my app.

Richard

On Tue, Apr 25, 2017 at 11:50 AM, Richard Vézina <
ml.richard.vez...@gmail.com> wrote:

> Is there a major issue that prevent us to use SQLFORM.grid like
> crud.select() where you can pass a query instead of a talbe??
>
> Richard
>
> On Tue, Apr 25, 2017 at 11:45 AM, Richard Vézina <
> ml.richard.vez...@gmail.com> wrote:
>
>> Yes, you are right, he can use SQLTABLE or build his grid with helper
>> though...
>>
>> Richard
>>
>> On Tue, Apr 25, 2017 at 11:23 AM, Anthony <abasta...@gmail.com> wrote:
>>
>>> On Tuesday, April 25, 2017 at 10:39:53 AM UTC-4, Richard wrote:
>>>>
>>>> Forgot to mention... If you for some reason you can't refactor your
>>>> schema... you can unionize query in web2py like so :
>>>>
>>>> select_cat = db(db.cat.id>0).select()
>>>>
>>>> select_dog = db(db.dog.id>0).select()
>>>>
>>>> select_cat_and_dog = select_cat | select_dog
>>>>
>>>> Note: You can use & or | they are python binary operator, if I recall
>>>> used like that combine with web2py query they mimic union (no duplicate)
>>>> and union all (keep duplicate)...
>>>>
>>>
>>> That won't help in this case. Above, you are running two separate SQL
>>> queries, creating two separate Rows objects, and then combining the Rows
>>> objects via Python. That approach cannot be used with SQLFORM.grid, which
>>> requires a single query as its input.
>>>
>>> Anthony
>>>
>>> --
>>> 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.
>>>
>>
>>
>

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