问问题
348 次
1 回答
3
不同之处在于get ...
返回一个普通User
的而不是一个Entity User
,所以这将起作用:
altSingleUser :: Int64 -> App User
altSingleUser userid = do
let foo = get (toSqlKey userid) :: SqlPersistT IO (Maybe User)
maybeUser <- runDb $ foo
case maybeUser of
Nothing ->
throwError err404
Just person ->
return person
如果要返回一个Entity User
,只需将最后一个 return 语句更改为:
return $ Entity { entityKey = toSqlKey userid, entityVal = person }
于 2016-08-20T16:55:46.407 回答