grails gorm 存储创建多对多关系的日期的方法
grails gorm way to store the date a many-to-many relationshp was created
假设我有这两个域类 ....
class Design{
static hasMany=[contributors:Contributor]
}
class Contributor{
static hasMany=[designs:Design]
static belongsTo=Design
}
随着时间的推移,我使用
为设计添加贡献者
def design=Design.get(params.designId)
...
design.addToContributors(newContributor).
假设我想跟踪贡献者和设计之间建立关系的日期。如果没有 grails gorm 抽象,我会在关系 table
中添加一个日期列
design_rel_contributor
| id | design_id | contributor_id | date_created |
但我不知道如何在 grails 中实现这样的 "metadata" 多对多关系。
您只需添加 dateCreated
列,然后通过实施 beforeInsert()
:
来填充它
class Contributor {
Date dateCreated
static hasMany = [designs:Design]
static belongsTo = Design
static constraints = {
dateCreated nullable: true
}
void beforeInsert() {
dateCreated = new Date()
}
}
假设我有这两个域类 ....
class Design{
static hasMany=[contributors:Contributor]
}
class Contributor{
static hasMany=[designs:Design]
static belongsTo=Design
}
随着时间的推移,我使用
为设计添加贡献者def design=Design.get(params.designId)
...
design.addToContributors(newContributor).
假设我想跟踪贡献者和设计之间建立关系的日期。如果没有 grails gorm 抽象,我会在关系 table
中添加一个日期列 design_rel_contributor
| id | design_id | contributor_id | date_created |
但我不知道如何在 grails 中实现这样的 "metadata" 多对多关系。
您只需添加 dateCreated
列,然后通过实施 beforeInsert()
:
class Contributor {
Date dateCreated
static hasMany = [designs:Design]
static belongsTo = Design
static constraints = {
dateCreated nullable: true
}
void beforeInsert() {
dateCreated = new Date()
}
}