组合不创建外键引用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了组合不创建外键引用相关的知识,希望对你有一定的参考价值。
我有两个域类如下,
class Agent {
String name
Team team
}
class Team {
String name
Agent primarySupervisor
static hasMany = [secondarySupervisors:Agent]
}
每个代理都有一个团队,每个团队都有一个主要主管和多个二级主管。
上面的代码不会为辅助管理程序映射创建表,如果我从Team域中删除团队属性,或者从Team域中删除primarySupervisor,则会创建映射表。
我究竟做错了什么?
答案
此域类结构应该适合您。
class Agent {
String name
static belongsTo = Team
static hasOne = [team: Team] // Every agent has a team
}
class Team {
String name
static hasMany = [secondarySupervisors:Agent] // every team has a primary supervisor and multiple secondary supervisors
}
这里有很多关系将形成一个新表作为team_agent。
以上是关于组合不创建外键引用的主要内容,如果未能解决你的问题,请参考以下文章