【问题标题】:Flash message display grailsFlash 消息显示 grails
【发布时间】:2014-08-12 15:06:14
【问题描述】:

我可以在控制器动作中做这样的事情吗

def update(){

    if(certain validation fails )
    //flash message to be visible 
    [domainInstance:originalDomainInstance,flash.message : "message(code:'default.some.code.label', default:'Please provide your validation err msg.' )"]
}

以上抛出语法错误。 我仍在尝试修复语法。用这种方式发送flash消息是否合理?

【问题讨论】:

    标签: grails gsp


    【解决方案1】:

    Grails 控制器返回模型,在简单的情况下只是映射(在您的情况下使用 domainInstance 映射)。 flash 是控制器中可用的属性。

    def update(){
    
        if(certain validation fails ) {
            flash.message = message(code: 'default.some.code.label', default: 'Please provide your validation err msg.')
        }
    
        [domainInstance: originalDomainInstance]
    }
    

    如果您想在模型映射中传递消息,语法应如下所示:

    [domainInstance: originalDomainInstance, myMessage: message(code: 'default.some.code.label', default: 'Please provide your validation err msg.')]
    

    有用的链接:flashmodels and views in Grails

    【讨论】:

    • 谢谢帕维尔。有用。但是可以在 [.....flash.message 中传递 flash.message :“message(code:'default.some.code.label', default:' Please provide your validation err msg.')” ]?我试图作为常规字符串消息传递。
    • 我不确定我是否知道您到底想做什么。你想在模型映射中传递一些信息吗?
    • 是的,在模型图中,我可以传递 flash.message 吗?这个问题是出于好奇。我已经实施了你的方法。
    • 您可以传递消息,但名称应不同于flash.message。看看更新的答案。
    • 没问题。使用 Grails 进行愉快的编码 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-22
    • 2019-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多