[英]How do I handle lazy loaded references when returning a model as JSON in Grails
在Grails中,我有一個模型類User,它與另一個模型類Address具有一對一的映射。 從控制器以JSON格式返回用戶時,我再也看不到地址類,而只有id。 在我的User類中,我有:
class User {
Address address
...
static mapping = {
...
address fetch: 'join'
...
}
然后在我的控制器中
User user = user.get(1)
render user as JSON
有沒有辦法更改映射以使“ as JSON”回退地址類?
我在Grails 1.3.7上運行。
JSON轉換器有兩種類型,即:
grails.converters.deep.JSON
grails.converters.JSON
。
。
您需要的是Deep Converter,只需將導入的類更改為:
// Dont Use: import grails.converters.JSON
import grails.converters.deep.JSON
注意: Grails 1.3.7 import grails.converters.deep.JSON是最終的,在Grails 2.0中已棄用。
兩者之間的區別在於,“深層”也將對嵌套的類進行JSON化,而標准轉換器則不會。
希望對您有所幫助
問候
庫沙爾
您是否嘗試過將轉換器設置為較深?
JSON.use(“ deep”){用戶user = user.get(1)將用戶呈現為JSON}
您可以在此處深入了解“定制對象編組器”周圍的一些內容,但是我的第一步是嘗試進行深度轉換。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.