gpt4 book ai didi

sql - grails中的变量声明是否与belongsTo关系相同?

转载 作者:行者123 更新时间:2023-12-02 15:15:03 24 4
gpt4 key购买 nike

我正在尝试设置一些域类。我将用英语解释它,我想知道如何在grails中设置域。大写单词是我的 Realm

雇员受过教育。雇员有很多雇主(过去和现在)。雇员为每个雇主有一个或多个项目。项目有角色,客户...等

现在我的问题是,例如,当我定义雇主时,

 hasMany = [projects:Project]

和ALSO在Project中放置
 belongsTo = [employer:Employer, employee:Employee, client:Client]

请注意-许多员工可能在同一个项目上工作,所以我可能想找出一种定义方式?

我还要输入雇主:
  ArrayList<Project> project = new ArrayList();
static hasMany = [projects:Project]

还是那多余?

最佳答案

变量声明与定义belongsTo关系不同。 belongsTo通常与级联的持久性 Action (尤其是删除)一起起作用。例如,如果您有两个类:

// Employee.groovy
Project project

// Project.groovy
static belongsTo = Employee

如果特定项目属于某个雇员,并且该雇员被删除,则该项目也将被删除。这是带有好答案的 another SO question

对于第二个问题,是的,定义 List是多余的。如果您这样做:
static hasMany = [projects: Project]

集合是为域隐式定义的。但是,在某些情况下,您可能需要初始化Collection以便在 constraints中使用。有关更多详细信息,请参见 this issue

关于sql - grails中的变量声明是否与belongsTo关系相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3738549/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com