我基本上是想得到这个结果:
<a href="#" class="button small-button green-button">
Log in
<span class="button-right"></span>
</a>
但我不知道如何使用 rails 3 中的 link_to 来做到这一点?
我基本上是想得到这个结果:
<a href="#" class="button small-button green-button">
Log in
<span class="button-right"></span>
</a>
但我不知道如何使用 rails 3 中的 link_to 来做到这一点?
您可以使用以下的块形式link_to
:
<%= link_to "#", :class => "button small-button green-button" do %>
Log in
<span class="button-right"></span>
<% end %>
最简单的方法是使用html_safe或原始函数
<%= link_to 'Log In<span class="button-right"></span>'.html_safe %>
或使用原始函数(推荐)
<%= link_to raw('Log In<span class="button-right"></span>') %>
尽可能简单!
除非您确定您的字符串不为零,否则不要使用html_safe方法。而是使用 raw() 方法,它不会在 nil 上引发异常。
你的代码片段看起来像一个静态链接,当被 Rails 解释时它永远不会改变;我想它可以保存在您的视图中插入原始 HTML。
然而:
<%= link_to("#", :class=>"button small-button green-button") do %>
Log in
<span class="button-right"></span>
<% end %>
参考。
以下对我有用。我不知道为什么其他代码没有(不同的 ruby 版本?)。
<%= link_to content_tag(:span, 'Register'), {:action => "register"}, :class=>"button" %>
添加到杰里米的答案 - 对于路径,如下所示:
<%= link_to edit_section_path(@section) do %>
Edit
<span class="fa fa-list pull-right"></span>
<% end %>