class Face {
..
static hasOne = [nose: Nose]
}
hasOne
目的
定义两个类直接的双向一对一关联,其中外键在子类中。
示例
class Nose {
Face face
}
在此示例中,我们在 Face
类和 Nose
类之间定义了一对一的关系
说明
使用 hasOne
关联将外键引用存储在双向一对一关系中的子类表而不是父类中。上面提供的示例将生成以下表结构
create table face (id bigint generated by default as identity (start with 1),
version bigint not null,
primary key (id))
create table nose (id bigint generated by default as identity (start with 1),
version bigint not null,
face_id bigint not null,
primary key (id))
请注意,外键 face_id
存储在 nose
表中,而不是存储在 face
表中,如同不使用 belongsTo
的普通一对一定义。