2

我有两个域类,Course 可以属于一个或多个培训,Track 可以有一个或多个课程。

Class Track{
   string name 
   static hasMany= [courses: Course]

}

Class Course{
   String name
   static belongsTo = [tracks: Track]

}

在课程中创建一个页面,我有字段

<g:select id="tracks" name="tracks.id" from="${com.springpeople.tms.Track.list()}" optionKey="id" value="${courseInstance?.tracks?.id}" class="many-to-one" noSelection="['null': '']"/>

但是轨道没有在课程中保存,我是否需要明确传递轨道对象。有没有办法做到这一点。

4

1 回答 1

2

首先,您需要保存轨道类对象,然后才能保存课程类对象。

在您尝试保存课程对象的情况下,您将无法获得曲目 ID,这就是为什么它会通过异常。

通过 save 方法保存轨道类对象后。

之后使用 object.addToCourse(courseObject).save(); 为了节省。

于 2012-07-09T11:32:41.823 回答