我已经在resources.groovy
中设置了一个JSON渲染器:
...
myModelJsonRenderer(JsonRenderer, MyModel) {
excludes = ['class']
}
...
当我运行
grails run-app
并尝试获取所有数据时,我仍然会收到带有类属性的JSON响应。但是,当我尝试通过删除一些部分,然后保存,然后将其恢复为运行时的状态来更新源代码,从而触发热代码加载时,将应用排除项,但我看不到class字段了。这里发生了什么事?我还设置了一个XML渲染器,但不包括类字段,但是它可以立即工作,而不必依赖于热代码加载。
最佳答案
我遇到了this issue from the official tracker,从中我得到the answer:
My experience so far is that if I want my RESTful interface to exclude a field from the domain class, I need to configure both of these renders:
beans = { userRender(JsonRenderer, User) { excludes = ['password'] } usersRender(JsonCollectionRenderer, User) { excludes = ['password'] } }
关于json - Grails-仅在加载热代码后才能从JSON响应中排除类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24171450/