Dog
name Text
race Text
getAllDogsR :: Handler Html
getAllDogsR = do
Dogs<- runDB $ selectList [] [Asc DogName]
defaultLayout
[whamlet|
<ul>
$forall Entity dogid dog <- Dogs
<li>
#{show $ unKey (dogid)}
|]
当我运行此代码时,我将获得数据库中所有狗密钥的列表 像这样:
但我真正想要的是显示键的纯值 像这样:
我的问题是如何实现这一目标。
答案 0 :(得分:2)
您需要首先从KeyBackend
中提取密钥,如下所示:
extractKey :: KeyBackend backend entity -> String
extractKey = extractKey' . unKey
where extractKey' (PersistInt64 k) = show k
extractKey' _ = ""
你现在应该能够做到
#{extractKey dogid}
答案 1 :(得分:2)
更改
#{show $ unKey (dogid)}
到
#{toPathPiece dogid}