検索機能について
こんなの使ってます
# config/initializers/global_named_scopes.rb class ActiveRecord::Base named_scope :conditions, lambda { |*args| {:conditions => args} } end # models/search.rb def find_products scope = Product.scoped({}) scope = scope.conditions "products.name LIKE ?", "%#{keywords}%" unless keywords.blank? scope = scope.conditions "products.price >= ?", minimum_price unless minimum_price.blank? scope = scope.conditions "products.price <= ?", maximum_price unless maximum_price.blank? scope = scope.conditions "products.category_id = ?", category_id unless category_id.blank? scope end
From #112 Anonymous Scopes - RailsCasts
ActiveRecordって意外と検索機能作りにくいよなぁ
僕が常套手段を知らないだけだろうか