我使用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