Hello!
I've this data structure in my database: i've two tables events and
modificators, one event can have many modificators so i've a one to many
relation. Im trying to build an HTTP endpoint that returns a json with
multiple events and all the asociated modificators, i order to do this i do
a join and return the select as a list, but my problem (and i understand
this problem is related to the way SQL works) is that the parent is
repeating on every record, so i've an event A with four modificators B, C,
D and E i get something like this:
[{"events": A, "modificator": B}, {"events": A, "modificator": C},
{"events": A, "modificator": D}, {"events": A, "modificator": E}]
instead of this i want something like
[{"events": A, "modificator": [B, C, D, E]}]
i now i can do this with a for and creating my own custom dictionary, but i
think this problem will be repeated several times along the api im
developing because my database has multiple one to many relations so it
would be good to get some "generic" solution instead of creating a lot of
nested fors for each case, also i think is a little bit inefficient doing
it on this way.
I was wondering if the DAL or web2py himself has some method for this, or
if you can recomend a external library because i thinks this is a fair
common case, even if you can give me some guidance to develop a common
class, or function for this problem.
By the way, i read this example in the web2py manual:
>>> for person in db().select(db.person.ALL):
print person.name
for thing in person.thing.select():
print ' ', thing.nameAlex
Boat
ChairBob
ShoesCarl
but i think it doesnt fit my needs because of the high database I/O, im
deploying my app on EC2 (Amazon) and the databases instances have a really
high cost, this is combined with my database having a LOT of records (about
2000 events and 5800 modificators) and growing.
Thanks for any help or guidance you can provide!
--
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.