如何围绕某些html ruby​​代码包装link_to?

atm*_*ell 116 ruby ruby-on-rails

如何围绕视图代码包装链接?我无法弄清楚如何将多行使用ruby代码传递给单个link_to方法.我要找的结果是你单击列并获得显示页面:

<div class="subcolumns">
  <div class="c25l">
        <div class="subcl">
        <%= image_tag album.photo.media.url(:thumb), :class => "image" rescue nil  %>
        </div>
    </div>
  <div class="c75r">
        <div class="subcr">
            <p><%= album.created_at %></p>
            <%= link_to h(album.title), album %>
            <p><%= album.created_at %></p>
            <p><%= album.photo_count %></p>
        </div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

Tho*_*sen 265

link_to 获取一段代码(> = Rails 2.2),它将用作标记的主体.

所以你也是

<%= link_to(@album) do %>
  html-code-here
<% end %>
Run Code Online (Sandbox Code Playgroud)

我很确定嵌套标签div内部a是无效的HTML.

编辑:=每个Amin Ariana的评论下面添加了字符.

  • 此评论只是一个参考:<a> <div> </ div> </a>在HTML5中有效,但在早期的HTML规范中没有.有关类似问题,请参见http://stackoverflow.com/questions/796087/make-a-div-into-a-link. (16认同)

syb*_*ohy 12

此外,这可能是一些问题:

<%=如果您正在使用代码中的代码进行简单链接,请确保编写代码而不是<%.

例如

<%= link_to 'some_controller_name/some_get_request' do %>
  Hello World
<% end  %>
Run Code Online (Sandbox Code Playgroud)


Oma*_*shi 8

对于较旧的Rails版本,您可以使用

<% content_tag(:a, :href => foo_path) do %>
  <span>Foo</span>
<% end %>
Run Code Online (Sandbox Code Playgroud)


Bar*_*her 6

您可以使用link_to块:

<% link_to(@album) do %>
    <!-- insert html etc here -->
<% end %>
Run Code Online (Sandbox Code Playgroud)

  • link_to要求'='显示(即使有一个块) (3认同)