Grails域:如何访问父域数据? [英] Grails Domain: How to access parent domain data?

查看:183
本文介绍了Grails域:如何访问父域数据?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个父子域结构,并且我想在验证器的子域中访问父域数据。例如,在下面的代码示例中,child1有一个变量'name',为了验证器的目的,我需要child2数据。



我该如何实现这种情况?



我有这样的域名结构:

  class Parent {
Child child1
Child child2

静态映射= {
child1 lazy:false
child2 lazy:false
}
}

class Child {
字符串名称
//一些其他变量

static belongsTo = [parent:Parent]

static constraints = {
name(nullable:true,validator:{val,obj - >
if(obj.parent){
return true
}
return false
})
}
}

我尝试了
this.parent.child2
,但父项被发现为空。



编辑:

已更改:

static belongsTo = [parent:Parent] $ b

另外在验证器中添加:

if(obj.parent){
return true
}
返回false



仍然返回false。

  static belongsTo = [Parent] 

code>

with

  static belongsTo = [parent:Parent] 

所以孩子知道它的父母


I have a parent child domain structure, and I want access parent domain data in child domain for validator. For example in the code example below, child1 has a variable 'name' and for validator purpose I need child2 data.

How can I achieve this situation?

I have domain structure like this:

class Parent{
    Child child1
    Child child2

    static mapping = {
        child1 lazy:false
        child2 lazy:false
    }
}

class Child{
    String name
    // some other variables

    static belongsTo = [parent:Parent]

    static constraints = {
        name(nullable:true,validator:{val, obj ->
            if(obj.parent){
                return true
            }
            return false
        })
    }
}

I tried this.parent.child2 but parent is found null.

EDIT:
Changed:
static belongsTo = [parent:Parent]

Also added in validator:
if(obj.parent){ return true } return false

Still it is returning false.

解决方案

Replace

static belongsTo = [Parent]

with

static belongsTo = [parent: Parent]

so the child know its parent

这篇关于Grails域:如何访问父域数据?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆