我写了这个小助手方法:
def alert_color(name)
if name == 'notice'
return 'alert alert-dismissable alert-success'
end
end
在我的应用程序布局中,我写道:
<% flash.each do |name, msg| %>
<div class=<%= alert_color(name) %>>
<button type="button" class="close" data-dismiss="alert">×</button>
<strong><%= name %></strong><%= msg %>
</div>
<% end %>
我的第一个问题是它不知何故无法正常工作,因为名称未正确传递给helper_method!
第二个问题是我尝试过:
alert_color('notice')
它返回了这个:
<div class="alert" alert-success="" alert-dismissable="">
我真的不知道如何改变这种行为!
而且,我正在以这种方式制作flash消息:
notice: 'User was successfully updated.'
答案 0 :(得分:2)
<div class="<%= alert_color(name) %>">
此外,您还需要在帮助程序中编写“成功”以外的其他案例。
def alert_color(name)
color = name == 'notice' ? 'success' : 'alert'
"alert alert-dismissable alert-#{color}"
end
答案 1 :(得分:0)
尝试插值
class="#{alert_color(name)}"