我有一个包含多个字段的搜索表单,它目前有效。我以以下方式编写了搜索操作:
conditions = {}
conditions[:x] = params[:x] unless params[:x].blank?
conditions[:y] = params[:y] unless params[:y].blank?
conditions[:z] = params[:z] unless params[:z].blank?
etc.
@results = Material.where(conditions)
这很好。但是现在我想添加一个条件,基本上说“级别小于或等于 params[:level],在我的脑海中看起来像这样:
conditions[:level] <= params[:level] ...
但这不起作用,因为您似乎只能使用此语法添加哈希。所以我的问题是如何在查询中添加这样的条件。