I was working on an aggregation endpoint:
things_recommended = {
'url': 'things/recommended/',
'datasource': {
'source': 'things',
'aggregation': {
'pipeline': [
{"$match": {"$or": [{"family": "$family_id"}, {"is_shared": True}]}},
{"$addFields": {
"recommended_for_me":
{"$setIsSubset":[["$user_id"], "$recommended_to"]}
}},
{"$sort": SON([("recommended_for_me", -1), ("happened", -1)])}
]
}
}
}
However, I found that $family_id and $user_id are not getting replaced since the code only covers the case of a pure dictionary without lists.
See:
|
if isinstance(st_value, dict): |
I'm new to Eve, so I'm not sure that what I found worth an error report. Though it took me quite a time to debug.
Best regards,
Youngjae
PS, Eve is AWESOME.
I was working on an aggregation endpoint:
However, I found that
$family_idand$user_idare not getting replaced since the code only covers the case of a pure dictionary without lists.See:
eve/eve/methods/get.py
Line 126 in 22ea4bf
I'm new to Eve, so I'm not sure that what I found worth an error report. Though it took me quite a time to debug.
Best regards,
Youngjae
PS, Eve is AWESOME.