Hi guys,
I am trying to solve what i guess is a trivial problem, i came up with a view that seems
to fulfill
my needs but, still... not being an view expert, i wouldn t mind hearing from your advices
here it goes : i have 2 types of documents :
{
"type":"user"
"_id":"AAAA"
"speciality":"13245"
}
{
"type":"object"
"user_id":"AAAA"
"status":" NEW"
...
}
what i try to do is get the list of all documents of type "object" with a specific status
for a specific user AND a specific speciality .
I came up with this view :
def getTripsByMeID_and_Status(doc):
if doc["type"]=="user":
yield [doc['_id'],0,doc['
speciality']], doc
if doc["type"]=="object" :
yield [doc['user_id'],1,doc['status']], doc To retrieve all objects owned by user AAAA with
a status "NEW" and speciality set to "12345" I would then use something like this:
view/myView?startkey=["AAAA http://localhost:59840/metickets/_design/trips/_view/getTripsByMeID_and_Status?startkey=[%22aaaaa%22,0,%229090-9403249032-49320-4930-9240294032%22]&endkey=[%22aaaaa%22,1,%22NEW%22]
",0,"12345"]&endkey=["AAAA http://localhost:59840/metickets/_design/trips/_view/getTripsByMeID_and_Status?startkey=[%22aaaaa%22,0,%229090-9403249032-49320-4930-9240294032%22]&endkey=[%22aaaaa%22,1,%22NEW%22]
",1,"NEW"] http://localhost:59840/metickets/_design/trips/_view/getTripsByMeID_and_Status?startkey=[%22aaaaa%22,0,%229090-9403249032-49320-4930-9240294032%22]&endkey=[%22aaaaa%22,1,%22NEW%22]
The only problem i can see with this, is, if objects for user AAAA are all with a status="old"
for instance, i will still get at least one line which will be the line refering to the doc
type "user"... Do you see a better way of doing this ? Thanks in advance (and thanks for reading
a rather long email :) ) Seb
|