在每个语句中传递对象属性

时间:2013-01-09 04:20:14

标签: ruby-on-rails erb

我试图在link_to中使用对象的参数,如下所示:

<% @step.images.each do |pic| %>
     <script>
        alert(<%=pic.id%>);
     </script>

     <li class = "span2" id="picture_<%=pic.id %>">
         <div class="thumbnail">
             <%=image_tag(pic.url.to_s, :width => "100%") %>
                  <p style="text-align: center;">
              <!-- ERROR ON LINE BELOW FOR LINK_TO PATH -->
              <%= link_to edit_step_image_path("<%=pic.id%>"), :class=> "btn btn-mini" do %>
                   <i class="icon-edit"></i>
              <% end %>

              <a href="#" class="btn btn-mini btn-delete" confirm="Are you sure you want to delete this photo?" data-method="delete">
                <i class="icon-trash"></i>
             </a>
        </div>
    </li>
<% end %>

我检查了我的提醒确实传递了正确的ID,但是当我尝试使用pic.id中的link_to时,出现语法错误。删除<%=pic.id%>周围的括号可以消除错误,但会给我错误的ID。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

你试图在ERB中插入ERB,这是行不通的。你已经在Ruby代码中,所以只需编写Ruby!而是使用它:

<%= link_to edit_step_image_path(pic.id), :class=> "btn btn-mini" do %>