2011-09-28 59 views
1

在基本CRUD模式,从创建视图的数据,我下面的代码保存项目:Grails的不节能

println params 
def newItem = new ProgressItem(name: params.name, comment: params.comment, status: params.status, itemsGroup: params.itemsGroup); //add itemsGroup: based on itemsGroup.id 
newItem.save() 

redirect(controller:'project', action:'show', id:params.itemsGroup.id) //change '1' 

但它不工作,那就是,当我回来的项目页面没有添加另一个进度项目。

下面是打印出来的PARAMS:

[status:FAILED, name:FF FF FF FF FF FF FF, itemsGroup.id:1, itemsGroup:[id:1], comment:FF FF FF FF FF FF FF, create:Create, action:save, controller:progressItem] 

我没有得到任何错误...

回答

4

如果不是

newItem.save() 

你这样做:

if(!newItem.save()) { 
    println "Validation errors on save" 
    newItem.errors.each { 
     println it 
    } 
} 

它打印出哪里出了什么问题?

+0

是的,我需要为itemsGroup执行ProgressGroup.get(params.itemsGroup.id): –