在我的控制器中,我有一个带有where方法的即时变量,它是搜索控制器中过滤器的一部分。
@items = @items.where([ 'borrowable = ?', true]) if params[:top_filter] == 'borrow'
这borrowable = ?, true一点是完全错误的。我想要的是通过使用被调用的方法来过滤@items可借用的。Item's modelborrowable?
我该怎么做呢?
中的方法Item model如下。
def borrowable?(current_user, user, item, controller)
false
if user.invited?(current_user, user)
item.pieces.each do |piece|
if piece.available?(current_user, piece)
true
end
end
if controller == "pages"
true
end
end
end