在我的控制器中,我有一个带有where
方法的即时变量,它是搜索控制器中过滤器的一部分。
@items = @items.where([ 'borrowable = ?', true]) if params[:top_filter] == 'borrow'
这borrowable = ?, true
一点是完全错误的。我想要的是通过使用被调用的方法来过滤@items
可借用的。Item's model
borrowable?
我该怎么做呢?
中的方法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