到目前爲止,我已經有了:Rails中提供了哪些Flash消息類型?
- :注意
- :警惕
- :錯誤
但有明確的清單,可以代替使用,如在redirect_to path, :error => "Oh no!"
?
到目前爲止,我已經有了:Rails中提供了哪些Flash消息類型?
但有明確的清單,可以代替使用,如在redirect_to path, :error => "Oh no!"
?
不,作爲一種flash類型,您可以使用任何符號,甚至是您自己的符號。
Hauleth是正確的,你可以使用任何的象徵,但現在,:notice
和:alert
是唯一可以(根據flash.rb in Rails source)通過直接爲redirect_to
,你特別提到:
redirect_to path, :error => "Oh no!" # Will not work
如果你想有一個不同的閃光類型,如:error
(或:success
),您必須通過:flash
鍵傳遞的,就像這樣:
redirect_to path, :flash => { :error => "Oh no!" }
有關如何註冊您的自定義閃存類型,因此,像:notice
和:alert
,你可以直接到redirect_to
通過他們,看到這個StackOverflow的Q &一個信息:https://stackoverflow.com/a/3848759/995663
更新:根據this commit,通過在ApplicationController中調用add_flash_types :error
來允許你註冊自定義閃存類型,Rails 4會讓這更容易。
Rails 4 way:http://stackoverflow.com/a/18642036/2148302 – sampi 2015-05-11 12:22:00
談論性能或實現相同行爲的正確方法,最好的方法是:** 1.-添加新的flash類型* *與'add_flash_types:error,...'或**相同*在Flash對象**中添加新的哈希,如同使用':flash => {:error =>「哦,不! ''? – 2017-07-12 22:14:20
正如Steve Grossi指出的那樣,您不能像cjm2671使用的示例那樣將任何符號傳遞給'redirect_to'。 – Nathan 2015-04-22 18:04:51