我在使用它后如何刷新会话时遇到问题。我已经召集了一个会议,当它安全时,我希望它被冲走。
在save()控制器上它有.save flush:true
但为什么会话没有被刷新?
我已经做了一些关于冲洗会议的研究,但遗憾的是我太过于理解它了。
相关文章:
控制器:
def create(){
def project = session['projectName'] // call out my session
def projectNames = Project.findAllByProjectName(project.projectName) // find out the project name inside my session and assign it in to "projectNames"
model:[projectNames:projectNames] // pass it to GSP and to let the user choose from the drop down
projectNames.save flush:true // but is an error
projectNames.currentSession.flush() //got no class currentSession
}
编辑1
def save() //generated by grails
{
project.save flush:true
}
提前致谢。
最好的问候,嗨
答案 0 :(得分:0)
你要看的第一件事就是下面一行
def projectNames = Project.findAllByProjectName(project.projectName)
您正在获取与名称project.projectName
匹配的项目列表,因此它返回项目实例List<Project> projectNames
的列表。
你应该打电话给
projectNames*.save(flush:true, failOnError: true)
我在代码中没有看到任何更新操作,所以只是想知道为什么你真的需要在这里进行保存操作。