0

更新

我有一个域类如下

class Training{
  // has one createdBy object references User domain and 
  // has one course object references Course domain
  // has One Trainer1 and Trainer2 objects refernces Trainer Object.
}

class Trainer{
   String name
  //can have many trainings.
  //If Trainer gets deleted, the trainings of him must be deleted
}
Class User{
  String name
  // can have many trainings. 
}

class Course{
  String name
   //If Course gets deleted, Trainings of this course must be deleted
   // can have many trainings.
}

我有一个培训创建页面,我必须在其中填充已保存的课程、用户、Trainer1 和 Trainer2。我没有在创建培训时保存它们。

那么,如何在grails中指定关系

4

2 回答 2

1

我在您的初始设计中看到了一些小缺陷:即,如果删除用户,为什么要删除培训,而培训显然会与许多用户联系在一起。没有培训师可以进行培训吗?反之亦然?

我会从这样的事情开始:

Class Training {
    static hasMany = [users: User, trainers: Trainer]
    static belongsTo = Course
}

Class Trainer {
    String name
}

Class User {
   String name
}

Class Course {
    String name
    static hasMany = [trainings: Training]   
}

编辑:我必须同意 Tomasz 的观点,你在没有自己寻找答案的情况下跳得太早了。Grails.org 也有很好的关于 GORM 的文档以及示例。

于 2012-07-10T07:41:55.910 回答
1

你没有为自己寻找答案而付出任何努力。有很多基本示例和博客文章如何在 Grails 中映射关系。您应该从 GORM 的 Grails 文档开始 - Grails 的对象关系映射。你可以在这里找到它。

于 2012-07-10T07:31:51.227 回答