我使用flash [:error]向用戶顯示一條簡單消息,指出他們在特定條件下無法執行刪除操作。我也有一個鏈接,可以幫助他們獲得有關他們想刪除的實體的信息,以及爲什麼他們不能這樣做。在Rails閃存郵件中使用HTML
建議在閃光消息中包含此超鏈接嗎?這意味着我會在我的控制器中有一個HTML片段。如果不是,我會怎麼做呢?
我使用flash [:error]向用戶顯示一條簡單消息,指出他們在特定條件下無法執行刪除操作。我也有一個鏈接,可以幫助他們獲得有關他們想刪除的實體的信息,以及爲什麼他們不能這樣做。在Rails閃存郵件中使用HTML
建議在閃光消息中包含此超鏈接嗎?這意味着我會在我的控制器中有一個HTML片段。如果不是,我會怎麼做呢?
如果你想在從控制器的閃存中的鏈接有2個問題。生成鏈接,然後將其顯示爲HTML。
要使用控制器中的link_to helper,請完全限定它。
要讓字符串顯示爲html(而不是轉義),請在字符串上調用html_safe方法。因此,您的控制器中的線路可能如下所示:
flash[:error] = "You can't do that. #{ActionController::Base.helpers.link_to "Here's why.", '/more_info.html'}".html_safe
你可以。您也可以在控制器中添加一些助手。
或者你可以通過i18n系統來完成。
flash對象是一個用於存儲視圖片段/消息的持有者,並使用該會話持久化它們以進行一次重定向。 我看到絕對沒有問題存儲鏈接,或更好的網址。
例如:
redirect_to posts_path, :alert => "You cannot do that", :flash => { :url => post_path(@post) }
和佈局來看,通常的嫌疑人:
- if flash[:alert]
...
- if flash[:url]
= link_to "blah blah", flash[:url]
如果已解釋downvote,那會很好! *嘆息* – 2010-12-09 14:06:07