解決できないエラーが発生します。スナップアプリケーションは問題なくコンパイルされ、すべて問題ないようです。しかし、ブラウザで関連するページをレンダリングすると、次のエラーが発生します。
Webハンドラーが例外をスローしました。詳細:[_ id:50b56f19208c2e9a09dccc2b、id:1.0、code: "hdg435"、name: "froggy"]の期待される( "code" :: Integer)
コード値は、私がテスト用に選んだ単なるランダムな文字列です。なぜ整数が期待されるのかわかりませんか?
これらは、スナップアプリケーションの例の関連部分です。
getData :: IO [Document]
getData = do
pipe <- runIOE $ connect $ host "127.0.0.1"
let run act = access pipe master "test" act
result <- run (find (select [] "pcs") >>= rest)
close pipe
return $ either (const []) id result
mkSplice :: Document -> Splice AppHandler
mkSplice d = runChildrenWithText [dtp "id" d
,dtp "code" d
,dtp "name" d
]
dtp :: Text -> Document -> (Text,Text)
dtp tag d = (tag, T.pack $ show $ at tag d)
recSplice :: Splice AppHandler
recSplice = mapSplices mkSplice =<< liftIO getData
table :: Handler App App ()
table = heistLocal (bindSplice "rec" recSplice) $ render "table"
table.tplの関連するHeistテンプレート部分は次のとおりです。
<table>
<tbody>
<rec>
<tr><td><id/></td><td><code/></td><td><name/></td></tr>
</rec>
</tbody>
</table>
コードの他の部分を投稿する必要があることを教えてください。