Grails - 数据绑定一对一关联不起作用

时间:2014-11-27 14:35:26

标签: grails data-binding associations one-to-one grails-domain-class

我尝试进行直接数据绑定,该绑定涉及一对一关联中的两个域类。这是两个类:

class Request
{
  static hasOne = [form: Form]

  Form form
}

class Form
{
  static belongsTo = [request: Request]

  String string
}

然后我执行以下数据绑定(这是为了演示问题......真正的数据绑定来自表单):

Request request = new Request()
request.properties = ['form.string': 'string value']

但是,我最终得到一个Request对象,该对象具有null表单属性,而不是Request对象,该对象具有Form属性的Form对象以及字符串值。

2 个答案:

答案 0 :(得分:0)

试试这个

class Request
{
  Form form
}

class Form
{
  static belongsTo = [request: Request]

  String string
}

答案 1 :(得分:0)

原来问题不在于实际的类,而是将地图传递给数据绑定。尽管根据Grails文档,以下内容应该有效:

Request request = new Request()
request.properties = ['form.string': 'string value']

它没有。但是,如果我将地图更改为正确的绑定:

Request request = new Request()
request.properties = [form: [string: 'string value']]