複数の条件で検索を作成する必要があります。主なものは次の 2 つです。市と州、および郵便番号です。次に、has_transportation、available_for_work などの他のブール属性があります。私が直面している問題は、検索を柔軟にしたいということです。つまり、ブール属性の場合、ユーザーはどちらかを選択できます。郵便番号または都市と州に基づく検索に加えて、合計で 6 つのブール属性があります。
私の考えでは、複数の条件ステートメントを考えていますが、これは 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)}