我以为每次你做一个flash[:notice]="Message",它会将其添加到数组中,然后在视图中显示,但下面只是保留最后一个闪光灯:

flash[:notice] = "Message 1"
flash[:notice] = "Message 2"

现在我意识到这只是一个带键的简单散列(我想:),但有没有比下面更好的方法来进行多次闪烁:

flash[:notice] = "Message 1<br />"
flash[:notice] << "Message 2"

推荐答案

flash条信息可以是你想要的任何东西,所以你可以这样做:

flash[:notice] = ["Message 1"]
flash[:notice] << "Message 2"

然后在视图中,将其输出为

<%= flash[:notice].join("<br>") %>

或者随便你喜欢什么.

该技术是否比其他解决方案高easier取决于您自己的偏好.

Ruby-on-rails相关问答推荐

Rails 7.1解决冲突的Zeitwerk Inflection规则

有没有一种方法可以点击一个按钮来冒泡到父元素?

使用Rails和RSpec,有没有办法查看操作真正将您带到哪个页面?

使用嵌套属性时如何自动将父 ID 分配为外键?

Turbo-Rails:如何将 Turbo Frame 添加到 `application.html.erb`?

如何从数组中提取值

Ruby on Rails form_with 不显示错误,卡在服务器端

升级到 Rails 6.1.6.1 导致 Psych::DisallowedClass: 试图加载未指定的类:符号

'elseif' 还存在吗?

GroupingError:错误:列必须出现在 GROUP BY 子句中或在聚合函数中使用

在哈姆尔与当地人进行局部渲染?

Rails 3 - Select 包含?

如何在 Rails 中使用延迟作业(job)取消预定作业(job)?

如何为 Rails SimpleForm Select 框设置默认 Select 值

simple_forms 自定义数据属性

Rails - 获取没有 GET 参数的当前 url

我如何找出为什么我不能#destroy() 记录?

禁用 JS/Ajax 请求时的 ActionController::InvalidAuthenticityToken

:javascript haml 标签中的内联Ruby ?

何时在 Ruby on Rails 中使用 lambda?