将Font Awesome图标链接到Rails属性

时间:2015-07-14 23:55:20

标签: ruby-on-rails font-awesome

我试图将Font Awesome图标与Rails属性的字符串进行超链接。

我试过了,

  <%= link_to do %>
    <i class="fa fa-link"><% school.website %></i>
  <% end %>

此,

<i class="fa fa-link" href="<% school.website %>"></i>

和此:

<i class="fa fa-link" href="<%= school.website %>"></i>

除其他变体外,似乎无法使语法正确。

非常感谢这里对语法的一些帮助,似乎找不到如何与属性链接起作用的具体答案,只有实际的静态文本hrefs。

PS:我是Rails的新手/使用Rails 4.2。

5 个答案:

答案 0 :(得分:6)

试试这个:

<%= link_to ('<i class="fa fa-link"></i>').html_safe, desired_path  %>

答案 1 :(得分:1)

考虑到school.website是一个URL,你在CSS中包含了图标,以下是:

<%= link_to(school.website) do %>
    <i class="fa fa-link"></i>
<% end %>

答案 2 :(得分:0)

假设school.website是您想要链接到的URL,并显示链接以及来自字体awesome的链接图标:

<%= link_to("<i class='fa fa-link'></i> #{school.website}".html_safe,school.website) %>

答案 3 :(得分:0)

我会建议一些不同的东西。

我个人在我的网站上使用glyphicons / fa很多,所以我决定在application_helper.rb中创建一个小帮手

<强> application_helper.rb

def fa(glyph, text = nil)
    html = "<i class=\"fa fa-#{glyph}\"></i>"
    html << " #{text.to_s.html_safe}" if text
    html.html_safe
end

实际上,在视图中使用的正确语法要么变为:

<%= link_to(school.website, class: "xxx") do %>
  <%= fa('link') %>
<% end %>

OR(更紧凑)

<%= link_to(school.website, class: "xxx"){ fa('link') } %>

答案 4 :(得分:0)

如果链接目标很难放入name参数中,则也可以使用块。 ERB示例:

尝试一下:

<%= link_to(school.website) do %>
    <%= fa_icon "fas link" %>
<% end %>