4

这是我在Persistent中的一个模型:

Tip
    text Text
    created_at UTCTime
    updated_at UTCTime
    title Text
    category_id CategoryId

以及相关的ToJSON实例(我不能使用deriveJSON):

instance ToJSON Tip where
    toJSON (Tip text created_at updated_at title category_id) = object ["text" .= text, "created_at" .= created_at, "updated_at" .= updated_at, "title" .= title, "category_id" .= category_id]

这几乎是正确的,除了我也想在这里 JSON 化 Tip 的 id ......但它不在模型上的任何地方!我该怎么做?有什么办法可以从 aEntityVal到 aEntityKey吗?

4

1 回答 1

2

AnEntity是键和值的配对。如果您只有值,则没有通用的方法可以知道它具有什么 id。如果它有任何独特的约束,您可以使用它来查找密钥。

EntityVal理论上,给定的id 可以在不同的后端数据库中分配不同的 id(甚至可能不具有相同的类型)。或者它可能是手动构造的要插入但实际上还没有被插入,所以它没有被分配一个 id。一个Tip值天生没有id;它可能只在特定数据库中有一个 id。

于 2013-04-26T06:56:09.287 回答