0

List<String>リクエストでアイテム ID である a を渡しています。ID がリストにあるアイテムのみを取得する必要があります。基本的に、製品 ID のリストを送信すると、MongoDB はList<Product>. 組み込みの何かだと思っていましたが、達成できません。

集約、評価などで何かを試しましたが、方法が見つかりません。次のように簡単にできると思いました:

override suspend fun getProductsById(input: List<String>): List<Product> {
    return productsCollection.aggregate<Product>(
        match(Product::_id in input)
    ).toList()
}

私の理解では仕方がありませんが、これは単純な API が許可するコア機能のようなものであると思われるため、間違っているに違いありません。List<String>おそらく、 をループして、次のように製品を 1 つずつリクエストすることで、2008 年のスタイルを実行できます。

productsCollection.findOne(Product::_id eq itemId)

ただし、複数のリクエストを実行する必要はないと思います。これは非常に間違った考えのようです。

4

1 に答える 1