Ruby on rails ActiveRecord按部分条件选择

Ruby on rails ActiveRecord按部分条件选择,ruby-on-rails,postgresql,activerecord,Ruby On Rails,Postgresql,Activerecord,我选择了几个过滤器: limit = 20 proposals = Proposal.from_user(@user).expired proposals = proposals.where(status: params[:status] if params[:status] render_json proposals.page(page).per(limit) 这将生成带有限制和偏移量的db查询。 我想做的是,在.expired的情况下,它将返回不超过3个与此范围匹配的提案,因此即使.ex

我选择了几个过滤器:

limit = 20
proposals = Proposal.from_user(@user).expired
proposals = proposals.where(status: params[:status] if params[:status]

render_json proposals.page(page).per(limit)
这将生成带有
限制
偏移量
的db查询。 我想做的是,在
.expired
的情况下,它将返回不超过3个与此范围匹配的提案,因此即使
.expired
有20个提案,它也只会“添加”3个提案到
提案
对象


我想这样做,以便在UI中将3个最近的提案(过期)显示为“过期”,并执行一些操作(如订阅更改)

范围是否也处于过期状态?如果过期了,你还需要该页面吗?不可能只使用
建议=建议。来自用户(@user)。过期。限制(3)
?。过期是另一个条件为“expired=true”的范围,@Ben-好主意,我想我将构建两个查询,一个正常,限制减3,另一个已过期,限制为3)是否也存在
过期
范围a状态?如果过期了,你还需要该页面吗?不可能仅用
建议=建议限制第一次查询。来自用户(@user)。过期。限制(3)
?。过期是另一个条件为“过期=真”的范围,@Ben-好主意,我想我将构建两个查询,一个正常,限制减3,另一个过期,限制3)谢谢