私が持っているとしましょうfooIds :: [Key Foo]
。どうすれば入手できfoos :: [Foo]
ますか?
私は試した
do
foos <- map get fooIds
しかし、それは私に与えます
No instance for (MonadBaseControl IO m0)
arising from a use of `get'
を使用する必要があるためだと思いますrunDB
。しかし、私はそれをどのように扱うのかよくわかりません。
私が持っているとしましょうfooIds :: [Key Foo]
。どうすれば入手できfoos :: [Foo]
ますか?
私は試した
do
foos <- map get fooIds
しかし、それは私に与えます
No instance for (MonadBaseControl IO m0)
arising from a use of `get'
を使用する必要があるためだと思いますrunDB
。しかし、私はそれをどのように扱うのかよくわかりません。
次のようになります。
foos <- runDB $ mapM get fooIds
ただし、それはあなたにのリストを与えるでしょうMaybe Foo
。Foo
に置き換えるか、を使用しget
て、これをのリストに変換できます。これらは2つの異なるアプローチであることに注意してください。最初のアプローチでは、IDが存在しない場合、ユーザーは404を取得します。2番目のアプローチでは、そのキーは単に無視されます。get404
catMaybes
別の有用なアプローチは
foos <- runDB $ mapM getJustEntity fooIds