0

关于解析 Rails 内置的 FLASH 消息有几个问题——大家都说应该是这样的:

<% flash.each do |key, value| %>
    <div id="flash_message" class="alert alert-<%= key %>">
        <%= value %>
    </div>
    <% end %>

这可以很好地打印消息,并且我有一个可以正常工作的 jQuery 淡出功能。

问题 - 当我想将多条消息放入闪存阵列时会发生什么?

 flash[:success] = ["Job edited successfully"]
else
  addNewJob(params,@cust)   
      flash[:added] = "Job Added Successfully" 
end
if upd
  flash[:success] << "Customer Info Edited Successfully"
else
  flash[:error] = "ERROR: Customer info could not be edited!"
end

在这里,我将两个元素推入 flash[:success] - 根据 SO 和其他地方的其他帖子,这很好,因为 flash.each 应该将它们拉出数组。

但它没有:

<div id="flash_message" class="alert alert-success">
        ["Job edited successfully", "Customer Info Edited Successfully"]
    </div>

这是页面源输出,它看起来就像页面上的那样 - 将整个数组显示为一个字符串,然后淡化整个东西。

我所期望的:

职位编辑成功客户信息编辑成功

在两条线上,两者同时淡出。

帮助?

4

1 回答 1

1

将模板更改为:

<% flash.each do |key, value| %>
    <% Array.new(value).each do |elem| %>
        <div id="flash_message" class="alert alert-<%= key %>">
            <%= elem %>
        </div>
    <% end %>
<% end %>
于 2013-06-25T00:52:56.330 回答