我的视图文件显示micropost
的答案列表是这样的。
<li class="micro-dist">
<%= render 'shared/micropost_content', micropost: micropost %>
<section class="answer-<%= micropost.id %>">
<%= render 'shared/answer_form', micropost: micropost %>
</section>
<% if micropost.answers.any? %>
<% answers = micropost.answers.take(5) %>
<div class="load-more-<%= micropost.id %>" >
<ol class="answers" >
<%= render answers %>
</ol>
<%= link_to "Load more", more_micropost_path(micropost), remote: true, class: "btn btn-info btn-sm btn-block btn-mine" %>
</div>
<% end %>
</li>
只有在micropost
有答案时才会显示加载更多链接。但即使没有答案,它总是显示负载更多的链接。我找到了一种更好的方法来编写上面的代码,其中if语句在下面回答了变量定义。
<% answers = micropost.answers.take(5) %>
<% if answers.any? %>
有效。但我不明白为什么第一个没有工作。在控制台中它返回false但不在视图中?有人可以解释一下吗。提前谢谢。