2013-07-14 3 views
3

Я пытаюсь обернуть ссылку вокруг Ли в моем рельсах приложение, и я думал, что следующий будет работать:Обертывание Link_to вокруг содержимого в Rails

 <%= link_to project_path(remix) do %> 
     <li> 
      <div class="remix-list-image"><%=link_to image_tag(remix.default_image.image_path_url(:preview), :class=>"img-polaroid"), project_path(remix) %></div> 
      <div class="remix-list-title"><%=link_to remix.title, project_path(remix) %> by <%= link_to remix.author, user_path(remix.user) %></div> 
     </li> 
     <% end %> 

Но это производит следующий HTML:

<a href="/projects/206"> 
</a> 
<li> 
    <a href="/projects/206"></a> 
    <div class="remix-list-image"> 
     <a href="/projects/206"></a> 
     <a href="/projects/206"><img alt="Preview_2013-06-18_08.25.02" class="img-polaroid" src=""></a> 
     </div> 
     <div class="remix-list-title"><a href="/projects/206">Video Test Remix</a> by <a href="https://stackoverflow.com/users/tiff">tiff</a> 
     </div> 
</li> 

Я ожидаю, что сделать что-то вроде следующего:

<a href ="/projects/206"> 
<li>...</li> 
</a> 

Что я делаю неправильно?

+0

возможно дубликат (http://stackoverflow.com/questions/1086360/how- do-i-wrap-link-to-around-some-html-ruby-code) – givanse

ответ

2

Вы смотрите на инспектора или на сгенерированный код? Если первое, это, вероятно, то, что браузер интерпретирует ваш HTML как, а не то, что на самом деле находится в исходном коде.

Причина в том, что вы не можете поставить li в якорь таким образом; единственное, что ul или ol разрешено содержать li. Изменение кода на это, и он должен работать: [? Как обернуть ссылку \ _to вокруг некоторого HTML кода рубинового] ​​

<li> 
    <%= link_to project_path(remix) do %> 
     <div class="remix-list-image"><%=link_to image_tag(remix.default_image.image_path_url(:preview), :class=>"img-polaroid"), project_path(remix) %></div> 
     <div class="remix-list-title"><%=link_to remix.title, project_path(remix) %> by <%= link_to remix.author, user_path(remix.user) %></div> 
    <% end %> 
</li> 
+0

Спасибо за помощь! Я смотрел на инспектора, а не на источник (что казалось правильным). – scientiffic

+0

интересно ... кажется, что вложение div в ссылку невозможно ни в чем, кроме html-5 ... полезно знать! – scientiffic

Смежные вопросы