gpt4 book ai didi

json - Grails - 如何将查询结果(来自 MongoDB)转换为没有冗余字段的 JSON 字符串

转载 作者:行者123 更新时间:2023-12-02 15:34:25 26 4
gpt4 key购买 nike

我有以下域类

class Settings {
static constraints = {
pageID(nullable: false, unique: true)
lp()
}

String pageID
Map lp
}

我正在像这样查询数据库:
...
def query = Settings.where {pageID == id}
def result = query.find()

这是评估结果的屏幕截图:
enter image description here

现在我正在寻找一种将结果格式化为 JSON 的方法,如下所示:
{"lp":{"account":"12345678","appKey":"64dsfg64dg64fg65dfg6","domain":"my.domain.com"},"pageID":"123456"}

提取字段的正确方法是什么?如果我可以避免手动获取每个字段,那将是最好的。谢谢 :)

最佳答案

由于我没有找到原生函数,所以我使用@Jinzhao Wu 的方法编写了这个辅助函数:

def getDBRecord(Object dc) {
def jo = new JSONObject()
def domainClass = new DefaultGrailsDomainClass(dc.class)
def props = domainClass.getPersistantProperties()
for (int i = 0; i < props.length; i++) {
jo.put(props[i].name, dc[props[i].name]);
}
return jo;
}

希望能帮助别人

关于json - Grails - 如何将查询结果(来自 MongoDB)转换为没有冗余字段的 JSON 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14139270/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com