我正在为 Yesod 中的资源编写 REST API。我有一个 POST 方法,它应该尝试创建给定的资源,如果成功返回 201 和新创建资源的 ID。例如,
postResourceR :: Handler String
postResourceR = do
id <- runDB $ insert Resource
sendResponseStatus status201 id -- DOES NOT COMPILE
这是我得到的错误,这很简单:
No instance for (ToTypedContent (Key Resource))
arising from use of 'sendResponseStatus'
我知道我想要一些东西ToTypedContent
,但我找不到任何方法从Key
Database.Persist.Class 中得到它。任何帮助将不胜感激。
编辑:
这是实际资源的定义:
Notification
title Text
content Text
icon Text Maybe
action Text Maybe
created UTCTime
updated UTCTime
deriving Show