回答編集履歴
2
追記
test
CHANGED
@@ -23,3 +23,9 @@
|
|
23
23
|
`で選ぶ
|
24
24
|
|
25
25
|
ただしこの方法ですと、ページングを行うのが厄介になります
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
及び、
|
30
|
+
|
31
|
+
schoolの結果が Array になりリレーションではなくなるので、この後リレーションとしての使い方はできません
|
1
追記
test
CHANGED
@@ -1,3 +1,25 @@
|
|
1
1
|
all ですか? or の間違いでは?
|
2
2
|
|
3
3
|
allですと「全てに該当する」ですから。
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
追記
|
8
|
+
|
9
|
+
もしかしたらSQLの達人が回答くれるかもと待ってましたが無いようなので、、、
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
私の力ですと一回で選び出す方法は思いつきません。
|
14
|
+
|
15
|
+
まず _or で 片方しかないものも含んだ schools を得、
|
16
|
+
|
17
|
+
そのあとで
|
18
|
+
|
19
|
+
`tag_ids = params[:q]からidのlistを得る
|
20
|
+
|
21
|
+
schools.select{|school| (school.tags.map(&:id) & tag_ids)==tag_ids}
|
22
|
+
|
23
|
+
`で選ぶ
|
24
|
+
|
25
|
+
ただしこの方法ですと、ページングを行うのが厄介になります
|