作为更改请求的结果,我需要为我的Grails应用程序实现正确的ORM。什么是正确的Grails ORM(GORM)实现使用?
我公司目前有以下简单的模型和协会:
代理
static hasMany = [fees:Fee]
费
static belongsTo = [agent:Agent]
不过,现在我需要实现的能力为一首歌曲费用将在代理商中分摊。我结束了以下内容:
潜在的新车型协会
费
static hasMany = [agentfees:AgentFee]
代理
no associations ??
AgentFee
static belongsTo = [fee:Fee]
在我心中的AgentFee将包含:
- 一定费用
- 给代理
- 代理的%的手续费的分割基准的基准(如80%)
所以我的问题是。我也应该有即像代理和AgentFees之间的关联:
费
static hasMany = [agentfees:AgentFee]
代理
static hasMany = [agentfees:AgentFee]
AgentFee
static belongsTo = [fee:Fee] static belongsTo = [agent:Agent]
但是这只是感觉与AgentFee中的多个belongsTo错误。使用GORM实施“费用拆分”概念的最佳方式是什么?
由于提前,
约翰
你试过了'static belongsTo = [fee:Fee,agent:agent]'? – 2015-03-03 12:31:47
谢谢你。我没有尝试过,但我的问题更多 - 是我的建模方式正确的开始?我的“费用拆分”方法是否正确? – 2015-03-03 14:26:16
对我来说看起来不错,但是,根据我的经验 - 如果您不使用脚手架控制器(大多数时候您不使用),也不使用自动创建数据库模式(也不应该),然后使用belongsTo和有许多属性会带来更多的痛苦而不是收益 - 个人而言,我只将一个引用作为常规字段放入域类而不是belongsTo,并且如果不使用hasMany,则跳过hasMany – 2015-03-03 14:37:32