所以我最近对GORM提出了很多要求,因为这是我第一次使用它,每次我都有一些关于对象之间关系的问题并保存它们。 所以这是一个类:
class TesterUser {
@Id
private String id
private String userId
static belongsTo = Dashboard
static constraints = {
userId nullable: true
}
static mapping = {
id column: 'id', generator: 'assigned'
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
这是另一个班级:
class TestingClass {
@Id
private String id
private Date created
private Date modified
private String title
private ClassName className
static hasMany = [testUsers : TesterUser, sheets : Sheet]
static belongsTo = ClassName
static constraints = {
modified nullable: true
title nullable: true
className nullable: true
}
static mapping = {
sheets column:'testingClassId',joinTable: false
testUsers column:'testingClassId',joinTable: false
id column: 'id', generator: 'assigned'
title column: "title", length: 90000
}
public Date getCreated() {
return created;
}
public void setCreated(Date created) {
this.created = created;
}
public Date getModified() {
return modified;
}
public void setModified(Date modified) {
this.modified = modified;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public DavUser getClassName() {
return className;
}
public void setClassName(ClassName className) {
this.className = className;
}
public Date getDeleted() {
return deleted;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
我已经将对象保存在数据库中,但现在我想设置它们之间的关系,当我调用并保存它们时,它不起作用:
TesterUser testU = TesterUser.findById(uId)
TestingClass testC = TestingClass.findById(cId)
if(testU != null && testC != null){
amountOfRelations++
testC.addToDashboardUsers(testU)
if(!dtestC.save(flush:true, failOnError: true)){
amountOfUnsaved++
}
else{
amountOfsaved++
}
出于某种原因,我没有得到任何错误。不仅如此,我可以看到查询将转到我的数据库,但没有任何反应。没有更新,也没有错误。 我不知道为什么它不起作用。
有什么想法吗?
答案 0 :(得分:0)
最终我无法保存我的实体。
我的解决方案'是使用addTo
方法首先保存实体。
我仍然不知道为什么它没有工作或我需要做什么才能让我的实体得到保存,但我仍然有一个解决方法。