繁体   English   中英

Rails 3.2.9搜索多个条件

[英]Rails 3.2.9 search with multiple conditions

我需要建立具有多个条件的搜索。 以下是两个主要的代码:城市和州以及邮政编码。 反过来,我还有其他布尔属性,例如has_transportation,available_for_work等。我面临的问题是我想使搜索更加灵活。 意思是,对于布尔属性,用户可以选择“任意”。 总共有六个布尔属性以及基于邮政编码或城市和州的搜索。

在我看来,我正在考虑多个条件语句,但这似乎不是Rails方式或完成此搜索的最有效方式。 有人可以提供有关如何解决我的问题的建议吗?

更新:

样品方案

t.integer  "zip_code",               :null => false
t.boolean  "availability",           :default => true
t.integer  "travel_distance",        :default => 0
t.boolean  "transportation",         :default => false
t.boolean  "insurance",              :default => false
t.boolean  "tools",                  :default => false
t.boolean  "employee",               :default => false
t.boolean  "subcontractor",          :default => false
t.string   "city"
t.string   "state"

输出:返回的结果将为零或多个帐户

这是我将要使用的示例:

 scope :tools, lambda { |arg| arg.blank? ? where("tools = ? OR tools = ?", true, false) : where(:tools => arg)}

看看Ransack及其演示应用程序

Ransack将帮助您构建搜索表单和针对模型运行的查询。

由于您的问题缺少很多细节,因此我的回答也必须如此。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM