我编写了一个简单的代码来填充Grail域类和显示db内容的代码,但它不起作用。附上是我的代码!我感谢任何帮助。
def populateDB(int nofelements)
{
def instance
for (int i=1;i<=nofelements;i++){
instance=new Avendpoint()
instance.avName=org.apache.commons.lang.RandomStringUtils.random(9, true, true)
instance.bridge=org.apache.commons.lang.RandomStringUtils.random(9, true, true)
instance.callerID=org.apache.commons.lang.RandomStringUtils.random(9, true, true)
instance.con=false
instance.state=AvendpointState.ONE_WAY
instance.uid=org.apache.commons.lang.RandomStringUtils.random(5, true, true)
instance.save(flush: true)
}
render "The database has been populated successfully!"
}
def showDB(){
def instance
String res
res+=Integer.toString(Avendpoint.count())
for(int i=1; i<Avendpoint.count(); i++){
instance=Avendpoint.get(i)
res+=instance.avName+"<br>"+instance.bridge+"<br>"+instance.callerID+"<br>"+
instance.con+"<br>"+instance.state+"<br>"+instance.uid+"<br>"
}
render res
}
答案 0 :(得分:1)
首先要尝试使用:instance.save(flush: true,failOnError:true)
。默认情况下,当域没有字段约束时,Grails不会抛出异常。也许实例在验证时被拒绝,并且不会被保存。