簡體   English   中英

在Grails中將模型作為JSON返回時如何處理延遲加載的引用

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM