如何禁用所有Devise gem flash消息(「成功登錄」,「註銷」)?謝謝。Rails禁用設計flash消息
回答
可能做到這一點的最簡單方法是
- 定義每個消息作爲一個空字符串
- 檢查字符串的長度告訴你一個提示信息之前。
在你devise.en.yml
文件中,指定每個消息爲空:
en:
errors:
messages:
not_found: ''
already_confirmed: ''
not_locked: ''
等。接下來,在佈局上,選中輸出之前的空白閃存字符串。
<% flash.each do |key, value| %>
<%= content_tag :div, value, :class => "flash #{key}" unless value.blank? %>
<% end %>
非常優雅!對於我的設計(2.1.0),只是將字符串設置爲''而不檢查空白嗎? – 2013-05-30 13:59:15
即使在4年後,這仍然有效:+1,謝謝 – Abhinay 2015-06-25 06:48:01
設計包括一個方便的生成所有的意見覆制到項目:
rails generate devise:views
這樣你就可以自己編輯的意見,並決定要保留或扔掉什麼(提示信息) 。
它看起來像是另一個問題的答案。你不能用這個來禁用flash消息。見布蘭登的答案。 – Voldy 2011-04-23 11:17:02
如果你在每個視圖中顯示你的Flash消息,你可以刪除它。但似乎這個問題假設他們在佈局。 – 2012-10-13 01:15:39
的回答對我來說更適合是覆蓋設計會話控制器這樣
class SessionsController < Devise::SessionsController
# POST /resource/sign_in
def create
super
flash.delete(:notice)
end
# DELETE /resource/sign_out
def destroy
super
flash.delete(:notice)
end
end
此安全覆蓋創建和銷燬方法刪除Flash消息
在Rails 4和Devise 3.4.1中,我不得不將這添加到路由中:devise_for:users,controllers:{sessions:「sessions」} – 2015-04-24 21:20:40
我已經能夠將其禁用在給定的控制器通過重寫is_flashing_format?
:
def is_flashing_format?
false
end
我使用的設計3.5.6
For Rails 5.0.6此代碼將工作。
app/controllers/sessions_controller.rb
class SessionsController < Devise::SessionsController
def new
flash.clear
super
end
end
不要忘了路線。
config/routes.rb
devise_for :users, controllers: { sessions: 'sessions' }
- 1. 設計動態Flash消息
- 2. Rails flash消息
- 3. Rails 3,設計:更改用戶註冊時的Flash消息
- 4. Rails 4 Flash消息:隨機消息
- 5. 只保留設計flash消息
- 6. 設計flash消息不會顯示
- 7. 設計自定義Flash消息
- 8. Spree複製設計中的Flash消息
- 9. 設計1.5.3和Flash消息演示?
- 10. Rails 4中的Flash消息
- 11. Java中的Rails flash消息
- 12. 禁用Flash消息而不禁用緩存點擊後退按鈕在RAILS
- 13. 用javascript觸發的Rails flash消息
- 14. 定製Rails設計註冊消息
- 15. 的Rails +設計:錯誤登出消息
- 16. Translate Rails設計錯誤消息
- 17. 如何在I18n上使用資源屬性設計flash消息
- 18. Rails 3.1設計如何更改Flash消息CSS從通知到成功?
- 19. 使用jmsTranslationBundle在Flash消息中設置翻譯的消息
- 20. Rails 3 - respond_to作爲JS和flash消息
- 21. Rails頁面緩存和Flash消息
- 22. 將HTML渲染爲Rails flash消息
- 23. Rails中的flash消息在哪裏?
- 24. Rails顯示模型中的Flash消息
- 25. Rails 3.2.3和json中的Flash消息
- 26. Flash消息(ajax)
- 27. BackboneJS Flash消息
- 28. 當require_no_authentication +重定向時設計,flash消息
- 29. 設計與移動MIME類型,401只顯示Flash消息
- 30. 將鏈接添加到設計的Flash消息
重複這個問題http://stackoverflow.com/questions/5281365/selectively-turning-off-devises-flash-notices-in-rails-3 – Voldy 2011-04-23 11:19:18