3
我想寫一個通用的方式來處理在Play 2.1中寫入到JSON的Pk
類,因爲我覺得爲每個Pk
類型編寫一個單獨的類是浪費的您正在使用。這是我到目前爲止有:通用的方式來實現一個Pk寫在Play Scala
implicit def pkWrites[E] = new Writes[Pk[E]] {
def writes(pk: Pk[E]): JsValue = Json.toJson(pk.get)
}
...我使用它的代碼是這樣的:現在
Json.toJson(Id(42L))
,這類作品(斯卡拉發現它),但這裏的是我得到的錯誤:
No Json deserializer found for type E.
Try to implement an implicit Writes or Format for this type.
其中type E
是Long
(因此,具有解串器)。無論如何,我可以告訴Json.toJson
E
是什麼類型?
好吧,我所做的只是將'E:Writes'添加到'pkWrites'類型參數中,它可以工作......':'是什麼意思?我對Scala很陌生。 – cdmckay
看到我的編輯,是否清楚? – Infinity
那麼'E:Writes'就是說確保'E'可以隱式轉換爲'Writes'嗎? – cdmckay