質問編集履歴
3
フッターでの結果追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -109,5 +109,25 @@
|
|
109
109
|
</form>
|
110
110
|
```
|
111
111
|
|
112
|
+
その一方で、ヘッダーと同じく全体に表示するフッター部分テンプレートでは以下のコードでうまくいっています。
|
113
|
+
app/views/layouts/_footer.html.erb
|
114
|
+
```ここに言語を入力
|
115
|
+
<footer class="footer">
|
116
|
+
<nav>
|
117
|
+
<ul>
|
118
|
+
<li><%= link_to "About", '#' %></li>
|
119
|
+
</ul>
|
120
|
+
</nav>
|
121
|
+
<!-- 検索フォーム-->
|
122
|
+
<%= form_for @search_form5, url: item_stocks_path, method: :get do |f| %>
|
123
|
+
<%= f.text_field :all_search, class: 'form-control', placeholder: 'アイテム名検索テスト中' %>
|
124
|
+
<%= button_tag sanitize('<i class="glyphicon glyphicon-search"></i>'), :type => "submit",:class =>"btn btn-default" %>
|
125
|
+
<% end %>
|
126
|
+
</footer>
|
127
|
+
```
|
128
|
+
|
129
|
+
|
130
|
+
|
112
|
-
一応この状態でも、当初の目標を満たすことはできるのですが、
|
131
|
+
一応ヘッダーがこの状態でも、当初の目標を満たすことはできるのですが、
|
132
|
+
フッターではうまくいくのに、
|
113
|
-
|
133
|
+
ヘッダーで2つ検索フォームをつくらないとうまくいかない原因が不可解です。
|
2
内容追記、段落追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
###目標・実現したいこと
|
1
2
|
ruby(ruby on rails)で、全てのページに表示するグローバルナビ(ヘッダー)に検索窓を設置して、
|
2
3
|
投稿したものを検索できるようにしたいと考えています。
|
3
4
|
|
@@ -7,13 +8,14 @@
|
|
7
8
|
**グローバルナビで検索を行った場合・・・
|
8
9
|
検索ボタンを押すと投稿一覧のページに飛んで、検索結果が表示されるようにしたいのです**。
|
9
10
|
|
11
|
+
###問題点
|
10
12
|
しかし、
|
11
13
|
**検索ボタンを押しても検索結果を表示する投稿一覧のページにリダイレクトせず、検索したページのままで困っています**。
|
12
14
|
エラー表示もありません。
|
13
15
|
URLを見ると、検索用のパラメータは作成されているみたいです。
|
14
16
|
http://localhost:3000/users/edit?utf8=%E2%9C%93&item_search_form%5Ball_search%5D=%E6%A4%9C%E7%B4%A2%E3%83%86%E3%82%B9%E3%83%88&button=
|
15
17
|
|
16
|
-
|
18
|
+
###現状のコード
|
17
19
|
現状のコードを説明すると・・・
|
18
20
|
フォームオブジェクトに検索機能を書きました。検索対象は、投稿(ItemStock)モデルだけとしています。
|
19
21
|
/app/forms/item_search_form.rb
|
@@ -56,17 +58,56 @@
|
|
56
58
|
layouts/viewの_header.html.erbには、
|
57
59
|
リダイレクト先のurlにitem_stockのindexページ(item_stocks_path)を指定してform_forを書きました。
|
58
60
|
|
59
|
-
/app/views/layouts/_header.html.erb(グローバルナビ
|
61
|
+
/app/views/layouts/_header.html.erb(グローバルナビの共通テンプレート)
|
62
|
+
|
63
|
+
```ここに言語を入力
|
64
|
+
<nav class="navbar navbar-fixed-top">
|
65
|
+
<div class="container">
|
66
|
+
<div class="navbar-header">
|
67
|
+
<button class="navbar-toggle collapsed" data-toggle="collapse" data-target="#mobile_menu_header1">menu <i class='glyphicon glyphicon-align-justify'></i></button>
|
68
|
+
<%= link_to "サービス名ロゴ", root_path, id: "logo" %>
|
69
|
+
</div>
|
70
|
+
|
71
|
+
<div class="collapse navbar-collapse" id="mobile_menu_header1"><!-- ハンバーガーメニュー格納 -->
|
72
|
+
<form class="navbar-form navbar-left" role="search">
|
73
|
+
<span class="form-group">
|
74
|
+
<!--問題の検索フォーム部分、item_stocks_pathにリダイレクトしてくれない -->
|
75
|
+
<% @search_form = ItemSearchForm.new unless @search_form %>
|
76
|
+
<%= form_for @search_form5, url: item_stocks_path, method: :get do |f| %>
|
77
|
+
<%= f.text_field :all_search, class: 'form-control', placeholder: 'アイテム名検索テスト中' %>
|
78
|
+
<%= button_tag sanitize('<i class="glyphicon glyphicon-search"></i>'), :type => "submit",:class =>"btn btn-default" %>
|
79
|
+
<% end %>
|
80
|
+
</span>
|
81
|
+
</form>
|
82
|
+
|
83
|
+
</div><!-- ここまで格納機能に格納する内容 -->
|
84
|
+
</div>
|
85
|
+
</nav>
|
60
86
|
```
|
87
|
+
|
88
|
+
**おそらくビューに問題の原因があり、リダイレクト先のURLを指定してあげれば大丈夫だと思ったのですが、ダメみたいです。**
|
89
|
+
もし解決方法を知っているならば、教えて頂ければ幸いです。
|
90
|
+
|
91
|
+
|
92
|
+
###追記
|
93
|
+
ビュー(app/views/layouts/_header.html.erb)に2つの検索フォームを作成して試したところ、
|
94
|
+
1つ目はリダイレクトせず、
|
95
|
+
2つ目はリダイレクトに成功しました。
|
96
|
+
```ここに言語を入力
|
61
|
-
<form class="navbar-form navbar-left"
|
97
|
+
<form class="navbar-form navbar-left" role="search"><!-- 左側に検索窓(入力フォーム)を設置 -->
|
62
98
|
<span class="form-group">
|
99
|
+
<!--一つ目の検索フォーム、なぜかリダイレクトには失敗 -->
|
63
100
|
<%= form_for @search_form5, url: item_stocks_path, method: :get do |f| %>
|
64
|
-
<%= f.text_field :all_search, class: 'form-control', placeholder: '投稿を検索' %>
|
65
|
-
<%= button_tag sanitize('<i class="glyphicon glyphicon-search"></i>'), :type => "submit",:class =>"btn btn-default" %><!-- 検索アイコンボタンを表示 -->
|
66
101
|
<% end %>
|
102
|
+
<!--2つ目の検索フォーム、リダイレクトに成功 -->
|
103
|
+
<% @search_form = ItemSearchForm.new unless @search_form %>
|
104
|
+
<%= form_for @search_form5, url: item_stocks_path, method: :get do |f| %>
|
105
|
+
<%= f.text_field :all_search, class: 'form-control', placeholder: 'アイテム名検索テスト中' %>
|
106
|
+
<%= button_tag sanitize('<i class="glyphicon glyphicon-search"></i>'), :type => "submit",:class =>"btn btn-default" %><!-- 検索アイコンボタンを表示 -->
|
107
|
+
<% end %>
|
67
108
|
</span>
|
68
109
|
</form>
|
69
110
|
```
|
70
111
|
|
71
|
-
**ビューにはリダイレクト先のURLを指定してあるので大丈夫だと思ったのですが、ダメみたいです。**
|
72
|
-
も
|
112
|
+
一応この状態でも、当初の目標を満たすことはできるのですが、
|
113
|
+
1つ目の検索フォームでリダイレクトが失敗する原因がよくわからず困っています。
|
1
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,12 +3,12 @@
|
|
3
3
|
|
4
4
|
|
5
5
|
例えば、投稿一覧(http://localhost:3000/item_stocks)とは関係ない
|
6
|
-
ユーザー設定のページ(http://localhost:3000/users/edit)
|
6
|
+
ユーザー設定のページ(http://localhost:3000/users/edit)で表示されている
|
7
|
-
グローバルナビで検索を行った場合・・・
|
7
|
+
**グローバルナビで検索を行った場合・・・
|
8
|
-
検索ボタンを押すと投稿一覧のページに飛んで、検索結果が表示されるようにしたいのです。
|
8
|
+
検索ボタンを押すと投稿一覧のページに飛んで、検索結果が表示されるようにしたいのです**。
|
9
9
|
|
10
10
|
しかし、
|
11
|
-
検索ボタンを押しても投稿一覧のページにリダイレクトせず、検索したページのままで困っています。
|
11
|
+
**検索ボタンを押しても検索結果を表示する投稿一覧のページにリダイレクトせず、検索したページのままで困っています**。
|
12
12
|
エラー表示もありません。
|
13
13
|
URLを見ると、検索用のパラメータは作成されているみたいです。
|
14
14
|
http://localhost:3000/users/edit?utf8=%E2%9C%93&item_search_form%5Ball_search%5D=%E6%A4%9C%E7%B4%A2%E3%83%86%E3%82%B9%E3%83%88&button=
|
@@ -28,7 +28,7 @@
|
|
28
28
|
end
|
29
29
|
end
|
30
30
|
```
|
31
|
-
|
31
|
+
全ての画面から行えるようにしたかったので、
|
32
32
|
applicationコントローラーに、検索用のパラメータと検索情報の受け渡しについて書きました。
|
33
33
|
app/controllers/application_controller.rb
|
34
34
|
```ruby
|
@@ -56,7 +56,7 @@
|
|
56
56
|
layouts/viewの_header.html.erbには、
|
57
57
|
リダイレクト先のurlにitem_stockのindexページ(item_stocks_path)を指定してform_forを書きました。
|
58
58
|
|
59
|
-
/app/views/layouts/_header.html.erbから検索フォーム部分だけ抜粋
|
59
|
+
/app/views/layouts/_header.html.erb(グローバルナビ)から検索フォーム部分だけ抜粋
|
60
60
|
```
|
61
61
|
<form class="navbar-form navbar-left" role="search"><!-- 左側に検索窓(入力フォーム)を設置 -->
|
62
62
|
<span class="form-group">
|
@@ -68,5 +68,5 @@
|
|
68
68
|
</form>
|
69
69
|
```
|
70
70
|
|
71
|
-
ビューにはリダイレクト先のURLを指定してあるので大丈夫だと思ったのですが、ダメみたいです。
|
71
|
+
**ビューにはリダイレクト先のURLを指定してあるので大丈夫だと思ったのですが、ダメみたいです。**
|
72
72
|
もし解決方法を知っているならば、教えて頂ければ幸いです。
|