2011-07-20 25 views

回答

1

而不是使用闪光灯,并试图找出设计如何做这件事(不适合胆小的人)通过扩展其控制器,如何检查引用链接,并在视图中显示与“提醒我的密码”路径相匹配的消息?

在视图:

<% if request.env['HTTP_REFERER'] == "/give/me/a/new/password" %> 
    <h2>Your password stuff is all good now.</h2> 
<% end %> 
+0

是的!谢谢 !如果这是最好的方法, – Max

+0

也许将其标记为接受? – stef

+0

抱歉,我是新的在stackoverflow – Max

0

闪光灯[:成功=“一些东西”

+0

这将需要在色器件控制器定制。如果你有,请发布该代码。 –

+0

好的,谢谢!但是我必须重写哪个控制器? passwords_controller?我很迷茫:/ – Max

0

设计推出它自己的警报消息(他们可以在config/locales/devise.en.yml进行编辑和其他语言写的),你只需要抓住他们。

一种方法是增加一个layout/_messages部分:

<% flash.each do |name, msg| %> 
    <% if msg.is_a?(String) %> 
    <div class="alert alert-<%= name %>"> 
     <a class="close" data-dismiss="alert">&#215;</a> 
     <%= content_tag :div, msg, :id => "flash_#{name}" %> 
    </div> 
    <% end %> 
<% end %> 

,呈现在application.html.erb

<%= render 'layouts/messages' %> 

这有捕获所有的利益(设计等)的信息和播放好听与引导警报类(如果您使用引导程序)。

或者,如果你正在使用slim

- flash.each do |name, msg| 
    - if msg.is_a?(String) 
    div class="alert alert-#{name}" 
     a class="close" data-dismiss="alert" 
     | &#215; 
     = content_tag :div, msg, :id => "flash_#{name}" 

= render 'layouts/messages' 

设计使用the rails standard :notice rather than :success但你可以add the success (green) styling到你的CSS/SCSS(例如到bootstrap_and_overriders.css.scss):

.alert-alert { 
    @extend .alert-error 
} 
.alert-notice { 
    @extend .alert-success 
} 
相关问题