質問編集履歴
2
「ユーザーが何も入力しなかった場合」と「該当のユーザーが存在しなかった場合」が逆でしたので編集致しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -52,7 +52,7 @@
|
|
52
52
|
|
53
53
|
else
|
54
54
|
|
55
|
-
#
|
55
|
+
# ユーザーが何も入力しなかった場合。
|
56
56
|
|
57
57
|
@users = User.all.order(created_at: :desc).page(params[:page]).per(20)
|
58
58
|
|
@@ -60,7 +60,7 @@
|
|
60
60
|
|
61
61
|
if @users == []
|
62
62
|
|
63
|
-
# ユーザーが
|
63
|
+
# 該当のユーザーが存在しなかった場合。
|
64
64
|
|
65
65
|
@users = User.all.order(created_at: :desc).page(params[:page]).per(20)
|
66
66
|
|
1
form_withの内容、及びコントローラを追記致しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,23 +12,61 @@
|
|
12
12
|
|
13
13
|
```
|
14
14
|
|
15
|
-
<
|
15
|
+
<%= form_with url: users_path, method: :get, local: true do |f| %>
|
16
16
|
|
17
|
+
<p>User name</p>
|
18
|
+
|
17
|
-
<%= f.search_field :name, :value => params[:name] %>
|
19
|
+
<%= f.search_field :name, :value => params[:name] %>
|
18
20
|
|
19
21
|
|
20
22
|
|
21
|
-
<p>Keyword</p>
|
23
|
+
<p>Keyword</p>
|
22
24
|
|
23
|
-
<%= f.search_field :introduction, :value => params[:introduction] %>
|
25
|
+
<%= f.search_field :introduction, :value => params[:introduction] %>
|
24
26
|
|
25
|
-
|
27
|
+
|
26
28
|
|
27
|
-
<p>Gender</p>
|
29
|
+
<p>Gender</p>
|
28
30
|
|
29
|
-
<%= f.radio_button :sex, "Male", :checked => true if params[:sex]&.include?("Male") %>Male
|
31
|
+
<%= f.radio_button :sex, "Male", :checked => true if params[:sex]&.include?("Male") %>Male
|
30
32
|
|
31
|
-
<%= f.radio_button :sex, "Female", :checked => true if params[:sex]&.include?("Female") %>Female
|
33
|
+
<%= f.radio_button :sex, "Female", :checked => true if params[:sex]&.include?("Female") %>Female
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
<%= f.submit :search, :class => "btn-square-little-rich" %>
|
38
|
+
|
39
|
+
<% end %>
|
40
|
+
|
41
|
+
```
|
42
|
+
|
43
|
+
**users_index.html.erb**
|
44
|
+
|
45
|
+
```
|
46
|
+
|
47
|
+
def index
|
48
|
+
|
49
|
+
if params[:name].present? || params[:introduction].present? || params[:sex].present?
|
50
|
+
|
51
|
+
@users = User.where(['name LIKE ? AND introduction LIKE ? AND sex LIKE ?', "%#{params[:name]}%", "%#{params[:introduction]}%", "#{params[:sex]}%"]).page(params[:page]).per(20)
|
52
|
+
|
53
|
+
else
|
54
|
+
|
55
|
+
# 該当のユーザーが存在しなかった場合。
|
56
|
+
|
57
|
+
@users = User.all.order(created_at: :desc).page(params[:page]).per(20)
|
58
|
+
|
59
|
+
end
|
60
|
+
|
61
|
+
if @users == []
|
62
|
+
|
63
|
+
# ユーザーが何も入力しなかった場合。
|
64
|
+
|
65
|
+
@users = User.all.order(created_at: :desc).page(params[:page]).per(20)
|
66
|
+
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
32
70
|
|
33
71
|
```
|
34
72
|
|