在rails中的Link_to和来自modal#show的动态名称

Mat*_*ood 1 html loops ruby-on-rails erb hyperlink

我有一个循环,从模态创建一个工作列表 work

//确实有效,但希望测试<%=工作.名称%>

<ol class="meny-control mobile"> 
   <% @works.each do |work| %>
       <li class="" data-id="<%= work.id %>"><%= link_to 'test', work %></li>
   <% end %>
</ol>
Run Code Online (Sandbox Code Playgroud)

//不起作用但想要它

<ol class="meny-control mobile"> 
       <% @works.each do |work| %>
           <li class="" data-id="<%= work.id %>"><%= link_to '<%= work.name %>', work %></li>
       <% end %>
    </ol>
Run Code Online (Sandbox Code Playgroud)

正如您猜测的那样<%= work.name %>会引发语法错误.我如何正确格式化link_to显示每个work.name作为'路径'&&锚点的内部html为work.name.

作为rails的新手,我仍然非常理解正确理解文档.你可以从link_to()(如果有的话)中引用这种格式的解释,所以我将它用于将来的参考和理解 - 以及如何正确编辑堆栈问题标题以备将来的类似问题.

vee*_*vee 5

错误是因为<%标签的嵌套,我想你已经意识到了这一点.要解决您的问题,请使用以下内容:

<%= link_to "#{work.name}", work %>
Run Code Online (Sandbox Code Playgroud)

#{}被用于内插的变量,即,字符串常量内的它们的值替换变量如link_to "#{work.name}"上述,其中work.name通过该值将被替换work.name成立.