Postgres表列循环

时间:2016-05-10 05:37:25

标签: ruby-on-rails ruby postgresql ruby-on-rails-4

我有一个Movie Review表,其中approve列为 boolean 。我是否可以循环浏览每个评论,看看是否有任何评论 true

如果任何(至少一个)评论获得批准( true ),则显示该评论,否则显示<p>No reviews at the moment...</p>

到目前为止,我有这个..我知道这只会检查数据库中是否有任何评论,而不是 true false 。不知道如何做对。

<% if !@movie.reviews.present? %>
   <p>No reviews at the moment. Be the first!</p>
<% else %>
  <% @movie.reviews.each do |review| %>
    <%= render "/reviews/review" , review: review%>
  <% end %>
<% end %>

1 个答案:

答案 0 :(得分:1)

试试这个..

<% unless @movie.reviews.where("reviews.approve = ?", true).present? %>
   <p>No reviews at the moment. Be the first!</p>
<% else %>
  <% @movie.reviews.each do |review| %>
    <% if review.approve %>
      <%= render "/reviews/review" , review: review%>
    <% end %>
  <% end %>
<% end %>