У меня есть список пользователей в моей базе данных.
user1: {name: "John", pet: {name:"Riko", type: "dog"}, married: true, children: [{name: "Marry", relationship: "daughter"}] },
user2: {name: John", married: false}
После извлечения пользовательского узла я хочу проверить, есть ли у этого пользователя определенная информация. В моем случае я хочу проверить, есть ли у пользователя поля pet
, married
и children
.
Если он это сделает, я хочу сохранить объект пользователя с новым атрибутом внутри: completedQuiz: true
(так как он добавил недостающую информацию через тест).
После реализации логики сверху результат, который я должен получить:
user1: {name: "John", pet: {name:"Riko", type: "dog"}, married: true, children: [{name: "Marry", relationship: "daughter"}], completedQuiz: true },
user2: {name: John", married: false, completedQuiz: false}
user2
имеет completedQuiz: false
, поскольку он не имеет всех узлов pet
, married
и children
, в то время как user1
имеет completedQuiz: true
, поскольку у него есть эти поля.
P.S. Я также хочу подписаться на этот список, поэтому, если данные будут добавлены после выборки, у меня все равно будет самый актуальный статус completedQuiz
для всех пользователей.
Что было бы хорошим способом реализовать это?