2013-01-07 57 views
-1

喜是新的Grails在我實現了一個刪除操作,在收件箱中刪除的郵件,,但現在我想改變閃光燈的消息,以顯示「2級刪除的郵件」不「消息4刪除留言5刪除「如果刪除多個消息。請幫助,下面是我的刪除操作Grails的編輯Flash刪除消息

高清代碼刪除(){

def messageInstance = Message.get(params.id) 

    // render error if no message found 
    if (!messageInstance) { 
     flash.message = message(code: 'default.not.found.message', args: [message(code: 'message.label', default: 'Message'), params.id]) 
     redirect(action: "phone") 
    } else { 
     // get the device that we are deleting from 
     //specify phoneNumber so as to delete the device by phoneNumber 
     def device = MessagingDevice.findByPhoneNumber(params.phoneNumber) 

     // invoke deleteFromDevice on domain object, which returns true if successful 
     if (messageInstance.deleteFromDevice(device)) { 
      flash.message = message(code: 'default.deleted.message', args: [message(code: 'message.label', default: 'Message'), params.id]) 
      redirect(action: "phone", params:[phoneNumber:params.phoneNumber]) 
     } 
    } 
} 
+0

如果(messageInstance.deleteFromDevice(設備)){ \t \t \t \t詮釋計數= messageInstance.count() \t \t \t \t flash.message =消息(代碼: 'default.deleted.message',ARGS:算,消息(代碼: 'message.label')]) \t \t \t \t重定向(動作: 「電話」,則params:[電話號碼:params.phoneNumber]) \t \t \t} – Weru

+0

認識到,計數()返回d的總行數omain表認爲它會在刪除後返回消息的數量?任何建議? – Weru

回答

0

int count = 5 //number of deleted messages 

flash.message = message(code: 'default.deleted.messages', args: [message(code: 'messages.label', default: 'Messages'), count]) 

在messages.properties:

messages.label=Messages 
default.deleted.messages={1} {0} deleted 
+0

爲什麼將已刪除郵件的數量設置爲5? – Weru

+0

這只是一個例子,你自己設定。 – Dopele

+0

shud計數是一個函數,那我能數已刪除郵件的數量,因爲如果我設置默認數量不認爲它會工作??? – Weru

0

你可以這樣做:

def device = MessagingDevice.findByPhoneNumber(params.phoneNumber) 

    // invoke deleteFromDevice on domain object, which returns number of objects deleted 
    def count = messageInstance.deleteFromDevice(device) 
    if (count) { 
     flash.message = message(code: 'default.deleted.message', args: [message(code: 'message.deleted.label', default: '{0} Messages deleted'), count]) 
     redirect(action: "phone", params:[phoneNumber:params.phoneNumber]) 
    } 

,並在您的messages.properties

message.deleted.label={0} deleted 
0

如果你看看在你的messages.properties你會看到default.deleted.message關鍵,它看起來像

default.deleted.message={0} {1} deleted 

只需使用鍵和值添加一個新行你要。

inbox.deleted.message={0} messages deleted 

,並在控制器

flash.message = message(code: 'inbox.deleted.message', args: [deletedMessageCount]) 

當然用它,你需要使用它之前定義deletedMessageCount的值。