MongoDB, извлечение данных из наборов с помощью ссылок на документы - PullRequest
0 голосов
/ 01 апреля 2020

Я новичок в этом, и мне нужна помощь. Для приложения pymon go flask мне нужно создать запрос для извлечения данных из двух коллекций MongoDB, содержащих справочные документы, пожалуйста, если у кого-то есть подсказка, я бился часами. Идея заключается в том, что на определенный день (например, на 1-й день) я хочу получать сотрудников из соответствующей смены

db.days:

{
    "_id": {
        "$oid": "5e83ec781c9d440000ed36a8"
    },

    "shift_date": {
        "$numberInt": 1
    },

    "emploee_name": [{
        "$oid": "5e7d4baa1c9d4400004f4d95"
    }, {
        "$oid": "5e7d4bc11c9d4400004f4d96"
    }, {
        "$oid": "5e7d4bc11c9d4400004f4d97"
    }]
}

db.emploees:

{
    "_id": {
        "$oid": "5e7d4baa1c9d4400004f4d95"
    },

    "emploee_name": "Kevin"
}

{
    "_id": {
        "$oid": "5e7d4baa1c9d4400004f4d96"
    },

    "emploee_name": "Queen"
}

{
    "_id": {
        "$oid": "5e7d4baa1c9d4400004f4d97"
    },

    "emploee_name": "Mark"
}

Спасибо.

1 Ответ

0 голосов
/ 01 апреля 2020

Вы можете делать все с помощью find_one() и get()

day = db.days.find_one({'shift_date': 1})

for emploee_id in day.get('emploee_name'):
    emploee = db.emploees.find_one({'_id': emploee_id.get('_id')})
    if emploee is not None:
        print(emploee.get('emploee_name'))
...