作爲更改請求的結果,我需要爲我的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