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

Richard

On Tue, Apr 25, 2017 at 10:32 AM, Anthony <[email protected]> wrote:

> On Tuesday, April 25, 2017 at 10:10:08 AM UTC-4, A3 wrote:
>>
>> Maybe you can use:
>>
>> db.define_table(‘animal’,
>>
>> Field('name', 'string', length=45),
>>
>> Field(‘age’, ‘integer’),
>>
>> Field(‘apt_time’,’datetime’)
>>
>>
>> and then subclass:
>>
>>
>> db.define_table(‘cat’, db.animal)
>>
>> and
>>
>> db.define_table(‘dog’, db.animal)
>>
>>
>> and then query on db.animal ?
>>
>
> No, you cannot do that. Above defines three separate DAL models, each of
> which will have a separate database table -- queries on db.animal would be
> made against an "animal" table in the database, not against the "cat" and
> "dog" tables separately.
>
> 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 [email protected].
> 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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to