【问题标题】:How can I redirect two actions instead of one action如何重定向两个动作而不是一个动作
【发布时间】:2012-06-29 05:12:13
【问题描述】:

这是我的控制器:

def save = {
    def productNameInstance = new ProductName(params)
    if (pharmacyMasterUpdateCompositeService.addProductName(productNameInstance)) {
        flash.message = "${message(code: 'default.created.message', args: [message(code: 'productName.label', default: 'ProductName'), productNameInstance.id])}"
        redirect(action: "show", id: productNameInstance.id)
    }
    else {
        render(view: "create", model: [productNameInstance: productNameInstance])
    }
}

其中 addProductName(productNameInstance) 正在调用另一个类中定义的服务。 在这里,如果您看到重定向仅在操作时发生:“显示”,如果页面已创建。 我的问题是如何在我的“打印”操作下载 pdf 文件的同时重定向两个操作,例如“显示”和“打印”?

【问题讨论】:

    标签: grails


    【解决方案1】:

    您可以使用chain 方法。

    def save = {
    def productNameInstance = new ProductName(params)
    if (pharmacyMasterUpdateCompositeService.addProductName(productNameInstance)) {
       //...        
      chain(action: "print", params: [id: roductNameInstance.id])
    }
    else {
        render(view: "create", model: [productNameInstance: productNameInstance])
    }
    
    def print = {
    //...
    chain(action: "show", params: params)
    }
    
    def show  = {  }
    
    
    }
    

    【讨论】:

      猜你喜欢
      • 2014-11-09
      • 2013-05-21
      • 1970-01-01
      • 2015-03-03
      • 1970-01-01
      • 2018-09-25
      • 2010-09-30
      • 1970-01-01
      • 2017-10-25
      相关资源
      最近更新 更多