Запрос Mongoose найти указанный элемент в массиве объекта - PullRequest
0 голосов
/ 25 февраля 2019

У меня есть такая dbSchema

blockNumber: { type: Number },
transactions: [
{
blockHash: { type: String },
from: { type: String },
gas: { type: String },
gasPrice: { type: String },
hash: { type: String },
nonce: { type: String },
to: { type: String },
value: { type: String },
status: { type: String },
blockNumber: { type: Number },
tx_Fee: { type: String },
TimeStamp: {type: String},
}
]

1 Как я нахожу единственный объект, который хэш = "некоторое значение" 2 Как я нахожу все объекты транзакций

1 Ответ

0 голосов
/ 25 февраля 2019

1 Вам необходимо использовать точечную нотацию для запросов подколонок.

Model.findOne({"transactions.hash": YOUR_HASH })

2 Вам нужны агрегаты $ unwind и $ replaceRoot.

Model.aggregate([
    {
        $unwind: "$transactions"
    },
    {
        $replaceRoot: { newRoot: "$transactions" }
    }
]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...