如何在grails

时间:2015-06-30 07:30:42

标签: rest grails grails-domain-class grails-2.4

我有2个课程PersonDesignation。我使用@Resource注释来使它们变得安静

            import grails.rest.Resource
            @Resource(formats=['json', 'xml'])

               class Person {
                               String name 
                               static belongsTo = [designation:Designation] 

                            static constraints = {  }
                            }

Designation类是

                import grails.rest.Resource
                @Resource(formats=['json', 'xml'])

                   class Designation {
                                   Long designationId
                                   String name 


                                static constraints = {  }
                                }     

因为我正在使用grails默认资源网址映射,如

"/app/person"(resources: "person",  includes: ['index', 'show', 'save', 'update', 'delete', 'create', 'patch'])

我想使用带有json数据的/app/person的POST请求将插入引用到Person对象。 由于designation属于另一个对象,因此我只需要传递对现有Designation对象id的引用 我怎么通过json传递这个?什么是json格式做同样的事情? 或者我可以在Person类的beforeInsert()方法中访问params,以便我可以手动获取designatioId,然后找到具有该id的Designation对象,然后为其分配新的Person对象?

1 个答案:

答案 0 :(得分:0)

我想如果你添加:

designation: { id: 123 }

给你的人JSON,这应该可以解决问题。