複数の MongoDB コレクションからデータを取得するために clojure を使用しています。
(ns mongofetch
(:require [somnium.congomongo :as m]))
(m/with-mongo (m/make-connection "testdb") (mapv m/fetch coll))
ここで、coll はコレクション名が格納されるベクトルです。これは、複数の MongoDB コレクションからデータをフェッチし、ドキュメントを含むシーケンス (コレクションごとにシーケンスを返す) で構成されるベクトルを返すため、正常に機能しています。しかし、map
代わりにmapv
(次のコードスニペットのために)を使用しているときにエラーが発生します。
(m/with-mongo (m/make-connection "testdb") (map m/fetch coll))
エラーは -java.lang.AssertionError: Assert failed: (connection? conn)
AssertionError をスローするのはなぜmap
ですか? のみを使用して解決するにはどうすればよいですか?