flash.message не печатает сообщение на экране в Grails 2.x
Моя функциональность у меня есть список пользователей. Когда я нажимаю на любого из пользователей, чтобы редактировать его информацию, появляется новое окно. Я изменяю некоторые значения и нажимаю сохранить. Теперь значения сохранены правильно, но сообщение "успешно сохранено" не отображается.
Мой код контроллера
if(user.save(flush:true)){
user.messages = "${message(code: 'user.saved')}"
flash.userInstance = user
render ...
}
и в GSP я печатаю сообщение, как это
<div id="messages">
<g:if test="${userInstance?.messages}">
<div class="message">${userInstance?.messages}</div>
</g:if>
<div>
Здесь Call не идет внутрь g: если условие, следовательно, сообщение не печатается. Это работало хорошо в Grails 1.3, но не работает в 2.2. Почему это так?
1 ответ
Этот пример работает для меня. Возможно, у вас есть ошибки проверки, попробуйте отладить ваш код.
if(user.save(flush:true)){
user.messages = "${message(code: 'user.saved')}"
flash.userInstance = user
render ...
}
и в gsp
<div id="messages">
<g:if test="${flash?.userInstance?.messages}">
<div class="message">${flash?.userInstance?.messages}</div>
</g:if>
<div>