検索フォームから提出された動的な価格帯を選択する必要があります。どのように私はスコープでこれにアプローチすべきですか?私はこのRails、named_scopeで作業する
Painting.price_range([ '1..500'、 '2000..5000'])
SELECT * FROM paintings WHERE price BETWEEN 1..500 **OR** BETWEEN 2000..5000 etc.
敬具のようなものを探しています。 AsbjørnMorell。
非常に良い! Painting.price_range([['1'、 '200']、['1000'、 '2000']]) ペインティング負荷(0.4ms)SELECT * FROM 'paintings' WHERE((price '1'と '200'の間、または '1000'と '2000'の間の価格) 私はそのような金のプレートに解決策を渡してくれてありがとう:) – atmorell
私はスコープを形式: これで生成されたクエリは、 です。SELECT * FROM 'pai(=>"変更を保存 "、"検索 "=> {" price_range "=>" [[1,1000] 私は、フォームからの値が配列として認識されないという問題があると考えています://[[1、1000]]と[[[1,1000] params [search] [price_range] .classはarrayではなくstringを返します。 提案がありますか? – atmorell
ええ、答えの解は、ペアの配列ではなく、一連の範囲の解です。 r.firstとr.lastのためにr.minとr.maxを変更すると、それもペアのために働くはずです。 – Shadwell