【发布时间】:2014-02-02 12:42:32
【问题描述】:
我的项目要求我以多对多的关系维护插入和检索顺序。默认情况下,groovy 将元素保存为多对多关系中的 Set。我想在一个列表中做到这一点。我不确定如何更新关系以使用 List 而不是 Set。任何帮助将不胜感激。
class Course{
static belongsTo = Teacher
static hasMany = [teacher:Teacher]
static mapping = {
teacher joinTable : [name: TeacherCourse]
}
}
class Teacher{
static hasMany = [course:Course]
static mapping = {
course joinTable : [name: TeacherCourse]
}
}
save() 调用 Teacher 或 Course 也会在 TeacherCourse 表中插入一个新行。它可以正常工作。在数据库中,这些表是:- 老师(PK:身份证) 课程(PK:身份证) TeacherCourse(PK: [Teacher_id,Course_id])
有没有办法在多对多关系中保持插入和检索的顺序?
谢谢你..
编辑 在控制器中保存()
def courseInstance = new Course()
List <Teacher> teacherList= []
teacherList.add(Teacher.findById(65))
teacherList.add(Teacher.findById(36))
courseInstance.courseUnits = teacherList
courseInstance.save(flush:true)
【问题讨论】:
标签: grails groovy grails-2.0 grails-domain-class