teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

誤字修正

2018/11/16 05:44

投稿

lolohacker
lolohacker

スコア31

answer CHANGED
@@ -1,4 +1,4 @@
1
- ビュー側ではradio_button_taguに変更し、name属性を同じにします
1
+ ビュー側ではradio_button_tagに変更し、name属性を同じにします
2
2
  ```slim
3
3
  = search_form_for @search, url: search_index_path do |f|
4
4
  div

3

追加説明

2018/11/16 05:43

投稿

lolohacker
lolohacker

スコア31

answer CHANGED
@@ -1,4 +1,4 @@
1
- ビュー側ではname属性を同じにします
1
+ ビュー側ではradio_button_taguに変更し、name属性を同じにします
2
2
  ```slim
3
3
  = search_form_for @search, url: search_index_path do |f|
4
4
  div

2

誤記修正

2018/11/16 05:43

投稿

lolohacker
lolohacker

スコア31

answer CHANGED
@@ -2,16 +2,16 @@
2
2
  ```slim
3
3
  = search_form_for @search, url: search_index_path do |f|
4
4
  div
5
- = f.radio_button :price, 1, checked: true
5
+ = radio_button_tag :price, 1, checked: true
6
6
  | 0円
7
7
  div
8
- = f.radio_button :price, 2
8
+ = radio_button_tag :price, 2
9
9
  | 1000円以下
10
10
  div
11
- = f.radio_button :price, 3
11
+ = radio_button_tag :price, 3
12
12
  | 5000円以下
13
13
  div
14
- = f.radio_button :price, 4
14
+ = radio_button_tag :price, 4
15
15
  | 10000円以上
16
16
  ```
17
17
  コントローラ側でラジオボタンの値を見て、適宜条件を設定することが可能です

1

誤字修正

2018/11/16 05:41

投稿

lolohacker
lolohacker

スコア31

answer CHANGED
@@ -17,12 +17,12 @@
17
17
  コントローラ側でラジオボタンの値を見て、適宜条件を設定することが可能です
18
18
  ```ruby
19
19
  def index
20
- params[:search] = { price_eq: 0 } if params[:price] == 1
20
+ params[:q] = { price_eq: 0 } if params[:price] == 1
21
- params[:search] = { price_lteq: 1000 } if params[:price] == 2
21
+ params[:q] = { price_lteq: 1000 } if params[:price] == 2
22
- params[:search] = { price_lteq: 5000 } if params[:price] == 3
22
+ params[:q] = { price_lteq: 5000 } if params[:price] == 3
23
- params[:search] = { price_gteq: 10000 } if params[:price] == 4
23
+ params[:q] = { price_gteq: 10000 } if params[:price] == 4
24
-
25
- ※以下検索処理
24
+ @search = Price.ransack(params[:q])
25
+ @result = @search.result(distinct: true)
26
26
  end
27
27
  ```
28
28
  ざっと書いてみたので、間違っているかもしれませんが、