回答編集履歴

3

partial修正

2018/10/29 12:05

投稿

h_daido
h_daido

スコア824

test CHANGED
@@ -148,6 +148,10 @@
148
148
 
149
149
  <p>表示件数:</p>
150
150
 
151
+ <!-- hiddenでパラメーターをセット -->
152
+
153
+ <%= f.hidden_field :name_or_address_or_station_or_area_id_cont %>
154
+
151
155
  <%= f.select :per_page, [['9件', 9], ['27件', 27], ['54', 54件]], selected: 9 %>
152
156
 
153
157
  <%= f.submit '切替' %>

2

partial修正

2018/10/29 12:05

投稿

h_daido
h_daido

スコア824

test CHANGED
File without changes

1

formを分けるパターン

2018/10/29 12:05

投稿

h_daido
h_daido

スコア824

test CHANGED
@@ -87,3 +87,71 @@
87
87
  - javascriptによる送信ロジックはカスタマイズしすぎな気がします。(今回は不要なんじゃないかと思いますが)。ここまでやると、完全にrailを踏み外しているパターンですね。Ajaxをしたいなら[このあたり](https://qiita.com/ka215/items/dfa602f1ccc652cf2888)読んでみましょう。
88
88
 
89
89
  - 好みによりますが、生のhtmlタグとrailsのhelperで生成されるタグとが入り乱れてて読みづらいですね(たとえばf.submitとinput type = submitタグとか)。可読性のためにもhelper側に統一したほうがいいと思います。
90
+
91
+
92
+
93
+ ---
94
+
95
+ <追記>
96
+
97
+ 以下コメントを受けての追記です。
98
+
99
+ formを検索フォームとまったく別にするパターンになります
100
+
101
+
102
+
103
+ ```html
104
+
105
+ <!-- index.html.erb -->
106
+
107
+ <%= search_form_for @q, url: products_path do |f| %>
108
+
109
+ <div class ="search_zone" >
110
+
111
+ <%= f.search_field :name_or_address_or_station_or_area_id_cont %>
112
+
113
+ <%= f.submit "さがす", class: "searchbtn" %>
114
+
115
+ </div>
116
+
117
+ <% end %>
118
+
119
+
120
+
121
+ <div id="products-box">
122
+
123
+ <!-- partialにqを渡すことで、partialからのsubmitを可能にします -->
124
+
125
+ <%= render :partial => "numberdisplay", :locals => { q: @q } %>
126
+
127
+ <h2>画像一覧:<span><%= @product_cnts %></span>&nbsp;件</h2>
128
+
129
+ <%= link_to product_path(id: product.id) do %>
130
+
131
+ <%= render :partial => "productbox", :locals => { img_class: "", product: product, building_name_class: "", current_mosaic: ""} %>
132
+
133
+ <% end %>
134
+
135
+ <%= paginate(@products) %>
136
+
137
+ </div>
138
+
139
+ ```
140
+
141
+
142
+
143
+ ```
144
+
145
+ <!-- _numberdisplay.html.erb -->
146
+
147
+ <%= search_form_for q, url: products_path do |f| %>
148
+
149
+ <p>表示件数:</p>
150
+
151
+ <%= f.select :per_page, [['9件', 9], ['27件', 27], ['54', 54件]], selected: 9 %>
152
+
153
+ <%= f.submit '切替' %>
154
+
155
+ <% end %>
156
+
157
+ ```