Ruby on rails 使用链接位置时ActiveRecord未进行筛选 #仅获取非空评论 查询=查看。其中(“内容”) #过滤状态(未查看、已审核、已标记等)(如果提供) 如果(状态) 其中(“状态=?”,状态) 结束 #订购行 查询订单(“在ASC上创建”) #迭代,这将触发查询 reviews=查询。每个带有_对象([])的_都要| review,一个|

Ruby on rails 使用链接位置时ActiveRecord未进行筛选 #仅获取非空评论 查询=查看。其中(“内容”) #过滤状态(未查看、已审核、已标记等)(如果提供) 如果(状态) 其中(“状态=?”,状态) 结束 #订购行 查询订单(“在ASC上创建”) #迭代,这将触发查询 reviews=查询。每个带有_对象([])的_都要| review,一个|,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,我的问题是,我的查询没有过滤“状态”。我已经仔细检查了我的代码是否包含在if语句中。我甚至做到了: # Get only non-empty reviews query = Review.where("content <> ''") # filter on status (unreviewed, reviewed, flagged, etc), if provided if (status) query.where("status = ?", status)

我的问题是,我的查询没有过滤“状态”。我已经仔细检查了我的代码是否包含在if语句中。我甚至做到了:

  # Get only non-empty reviews
  query = Review.where("content <> ''")

  # filter on status (unreviewed, reviewed, flagged, etc), if provided
  if (status)
    query.where("status = ?", status)
  end

  # Order rows
  query.order("created_on ASC")

  # iterate, this should fire the query
  reviews = query.each_with_object([]) do |review, a|
  # Get only non-empty reviews
  query = Review.where("content <> ''")

  # filter on status (unreviewed, reviewed, flagged, etc), if provided
  query.where("status = ?", status)
#仅获取非空评论
查询=查看。其中(“内容”)
#过滤状态(未查看、已审核、已标记等)(如果提供)
其中(“状态=?”,状态)

我确信我做错了什么,但我不知道,我刚刚发现了它。每次都需要分配查询

#仅获取非空评论
查询=查看。其中(“内容”)
#过滤状态(未查看、已审核、已标记等)(如果提供)
其中(“状态=?”,状态)
  # Get only non-empty reviews
  query = Review.where("content <> ''")

  # filter on status (unreviewed, reviewed, flagged, etc), if provided
  query.where("status = ?", status)