我使用重定向将模型对象从一个方法传递给grails中的另一个方法。如何在另一个方法中获取该模型对象的值。
请在此处查看我的代码
redirect(controller:"inquiry", action:"createSSVInvestigation", model: [inquiryInstance:inquiryInstance], params:['inquiry.id':inquiryInstance.id])
因此,在动作createSSVInvestigation
中,如何获取inquiryInstance
对象的值。
答案 0 :(得分:4)
redirect(controller:"inquiry", action:"createSSVInvestigation",params:['inquiryId':inquiryInstance.id])
在createSSVInvestigation操作中,我们通过params.inquiryId
获取inquiryInstance的id。
def createSSVInvestigation(){
def inquiryInstance= InquiryClassname.get(params.inquiryId)
}
答案 1 :(得分:2)
您可以使用参数传递所有对象/变量,并在createSSVInvestigation
动作中从参数中访问它们。此外,模型不是重定向参数here的一部分。
redirect(controller:"inquiry", action:"createSSVInvestigation", params: [...])
答案 2 :(得分:0)
使用此
flash.chainModel.inquiryInstance
更新:
最初的问题是获得在模型中设置的inquiryInstance
。在documentation中提到我们应该使用闪存。因此,这是链接控制器后访问闪存变量的一种方法。