使设计适应Grails

时间:2012-03-30 19:21:37

标签: grails domain-model

我已经完成了一个php / mysql CMS项目,因为grails是我其中一个课程的主题,我想为什么不再使用它并将CMS调整为grails应用程序。

我目前正在对域进行建模,该域由4个类组成:UserLabsFilesSupportUser是应用的主要域名,有许多Labs。每个Labs对象都有多个Files和一个Support

Support的目标是引用附加到特定实验室的所有Users。每个实验室都有一个领导,0到多人的工作人员和一名指导老师。我的问题是如何在Grails中对此进行建模?我目前正在课堂上宣布User leadUser faculty,但我不确定如何管理0到多名支持人员。

如果我执行static hasMany [user:User],则表示添加User Support的所有{{1}}都会在没有区别作用的情况下添加。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我认为这只是打电话给关系人员。

class Support{
   static hasMany = [ staff : User ] 
   User lead
   User facultyAdvisor
}

在您的代码中,您将致电:

def support = new Support()
support.addToStaff( user1 )

这对我有意义。

你的hasMany可以被称为任何东西。你甚至可以拥有像

这样的关系
class Support{
    static hasMany = [ staff:User, leads: User, facultyAdvisors: User ]
} 

这将允许您按角色区分用户。