我正在尝试在我的 rails 应用程序中构建搜索结果页面(仍然是菜鸟),但我不知道如何以 rails 方式构建查询。
例如,如果没有参数,我想返回所有结果。如果用户在搜索表单中传递 1 到 n 个可选参数,我想将它们添加到查询中。
接下来,如果他们有指定的“价格 desc”或“year_built desc”甚至两者的组合。
最后使用 will_paginate 分隔结果
# default to all listings
@listings = Mls.all
@listings.where("listing_price > ?", params[:listing_price]) unless params[:listing_price].blank?
# ... bunch of other search options ...
@listings.where("property_type = ?", params[:property_type]) unless params[:property_type].blank?
# order
@listings.order("some order by param") if some sort param
@listings.order("some order by param") if some other sort param
# paginate results
@listings.paginate(:page => params[:page])
有没有这样做的“Rails”方式?