我有像
这样的域名class BusinessOrganization {
static hasMany = [organizationBusinessTypes:OrganizationBusinessType]
String name
String icon
static constraints = {
name(blank:false,unique:true)
icon(unique:true)
}
String toString() {
return "${name}"
}
}
保存第一次保存数据时没有错误。但是当我第二次尝试保存时,我收到了这个错误:
Class java.sql.BatchUpdateException Message
Batch entry 0 insert into business_organization (version, icon, name, id) values ('0', '', '', '2') was aborted. Call getNextException to see the cause.
它说:
def save() {
23: def businessOrganizationInstance = new BusinessOrganization(params)
24: if (!businessOrganizationInstance.save(flush: true)) {
25: render(view: "create", model: [businessOrganizationInstance: businessOrganizationInstance])
26: return
27: }
第24行出错。我无法弄清楚我做错了什么。在其他领域,这工作正常。请有人帮忙。我是Grails的新手,现在已经被困在这里了。我正在使用PostGreSQL
答案 0 :(得分:0)
尝试输入
insert into business_organization (version, icon, name, id) values ('0', '', '', '2')
直接进入您的数据库(在控制台或pgAdmin中)并检查异常。
另请注意,您对名称和图标值设置了唯一约束 - 请检查已保存条目中的那些。
答案 1 :(得分:0)
将保存(第24行)包装在try / catch中,并向视图层提供适当的反馈