У меня следующая структура данных:
[
{
"site_id": ObjectId("5e85b9d20498abd407e9a030"),
"status": "ERROR"
},
{
"site_id": ObjectId("5e85b9d20498abd407e9a120"),
"status": "ERROR"
},
{
"site_id": ObjectId("5e85b9d20498abd407e9a030"),
"status": "OK",
"risk_categories": [
{
"position": 1,
"category_id": 1414,
},
{
"position": 2,
"category_id": 1402,
},
{
"position": 3,
"category_id": 1392,
}
]
}
]
Я хочу сделать запрос с помощью pymon go, например так:
collection.find_one (filter = filter)
где: filter = {'$ and': [{'$ and': [{'site_id': ObjectId ('5e85b9d20498abd407e9a030')}, {'status': 'OK'}]}, {'risk_categories' : {'$ elemMatch': {'$ or': [{'position': {'$ eq': 1}}, {'position': {'$ eq': 2}}]}}}]}
однако он возвращает мне весь объект. Не только значения категорий риска, которые я хочу. Что я могу сделать на своем фильтре, чтобы изменить это?