Rails 4 link_to опция для включения данных

#ruby-on-rails #hyperlink

#ruby-on-rails #гиперссылка

Вопрос:

у меня есть ссылка следующим образом

 <a title="" class="btn btn-default btn-icon btn-xs tip" href="#" data-original-title="Edit"><i class="fa fa-pencil"></i></a>
 

что я пробовал?

 <%= link_to "<i class="fa fa-pencil"></i>".html_safe, edit_admin_category_path(category), :class => 'btn btn-default btn-icon btn-xs tip', :data => {:original-title=>"Edit"} %>
 

Ошибка:

 /Users/harshamv/Sites/nomad/app/views/admin/categories/index.html.erb:28: syntax error, unexpected tIDENTIFIER, expecting ')'
 

Есть ли способ использовать link_to без необходимости использовать следующий формат

 <%= link_to(@profile) do %>
  <strong><%= @profile.name %></strong> -- <span>Check it out!</span>
<% end %>
 

Ответ №1:

Ваш подход будет работать, это просто синтаксическая ошибка, в которой вам нужно исправить двойные кавычки.

 <%= link_to "<i class='fa fa-pencil'></i>".html_safe, edit_admin_category_path(category), :class => 'btn btn-default btn-icon btn-xs tip', :data => {:original-title=>"Edit"} %>
 

Вы также можете использовать content_tag , что немного чище

 <%= link_to content_tag(:li, '', class: 'fa fa-pencil'), edit_admin_category_path(category), :class => 'btn btn-default btn-icon btn-xs tip', :data => {:original-title=>"Edit"} %>