質問編集履歴

2

誤字の修正

2020/08/11 05:57

投稿

ty_tech
ty_tech

スコア1

test CHANGED
File without changes
test CHANGED
@@ -232,7 +232,9 @@
232
232
 
233
233
  end
234
234
 
235
- ````
235
+ ```
236
+
237
+
236
238
 
237
239
  に変えてみるとエラーはでないものの、create画面が表示されずに、
238
240
 
@@ -242,8 +244,4 @@
242
244
 
243
245
 
244
246
 
245
- ②リダイレクト先を`redirect_to contact_mails_path(@contact)`に変更
246
-
247
-
248
-
249
247
  どこが原因なのかでしょうか。。。

1

ActionController::ParameterMissing in ContactMailsController#create エラーをまず解決したいため

2020/08/11 05:57

投稿

ty_tech
ty_tech

スコア1

test CHANGED
@@ -1 +1 @@
1
- createで完了画面を表示させたい
1
+ ActionController::ParameterMissing in ContactMailsController#create エラーが
test CHANGED
@@ -1,20 +1,10 @@
1
1
  ### 実現させたいこと
2
2
 
3
- Rails wayにたがってcreateで完了画面表示させたい
3
+ ActionController::ParameterMissing in ContactMailsController#createエラーを解決して`create`画面表示させたい
4
-
5
-
6
-
7
- ### 現在の状況
4
+
8
-
9
- Action Mailerを使ってお問い合わせ画面を作成しています。
5
+
10
-
11
- new.html.erbでnewでお問い合わせ内容を送信しています。
6
+
12
-
13
- show.html.erbで完了画面を表示させています。
14
-
15
-
16
-
17
- Rails wayにってcreateで完了画面を表させたいと思っています。
7
+ プログラミング初心者で、基礎的な部分なのかと思いお恥ずかいのです、ご教頂きたいす。
18
8
 
19
9
 
20
10
 
@@ -22,7 +12,9 @@
22
12
 
23
13
  ```
24
14
 
25
- resources :contact_mails
15
+ resources :contact_mails, only: [:new, :create]
16
+
17
+ get '/contact_mails', to: 'contact_mails#create'
26
18
 
27
19
  ```
28
20
 
@@ -54,7 +46,7 @@
54
46
 
55
47
  ContactMailer.contact_mail(@contact).deliver
56
48
 
57
- redirect_to contact_mail_path(@contact), notice: "お問い合わせを受け付けました。"
49
+ redirect_to contact_mails_path(@contact), notice: "お問い合わせを受け付けました。"
58
50
 
59
51
  else
60
52
 
@@ -66,14 +58,6 @@
66
58
 
67
59
 
68
60
 
69
- def show
70
-
71
- @contact = ContactMail.find(params[:id])
72
-
73
- end
74
-
75
-
76
-
77
61
  private
78
62
 
79
63
 
@@ -100,7 +84,7 @@
100
84
 
101
85
 
102
86
 
103
- <%= form_with model: @contact do |f| %>
87
+ <%= form_with model: @contact, url: contact_mails_path, html: {method: :post} do |f| %>
104
88
 
105
89
  <form>
106
90
 
@@ -176,7 +160,7 @@
176
160
 
177
161
 
178
162
 
179
- show.html.erb】
163
+ create.html.erb】
180
164
 
181
165
  ```
182
166
 
@@ -216,13 +200,13 @@
216
200
 
217
201
  【返信先】<br>
218
202
 
219
- <%= @contact.email %><br>
203
+ <%= @contact.email<br>
220
204
 
221
205
  <br>
222
206
 
223
207
  ------------------------------------------------
224
208
 
225
- </p>
209
+ </p> %>
226
210
 
227
211
 
228
212
 
@@ -232,34 +216,34 @@
232
216
 
233
217
 
234
218
 
219
+
220
+
235
221
  ### 行ったこと
236
222
 
237
223
 
238
224
 
225
+ コントローラの`contact_params`内を
226
+
227
+ ```
228
+
229
+ def contact_params
230
+
231
+ params.permit(:name, :email, :subject, :message)
232
+
233
+ end
234
+
235
+ ````
236
+
239
- ①show.html.erbファイル名をcreate.html.erb変更
237
+ に変えてみるとエラーはでないもの、create画面が表示されず
238
+
239
+ `入力に不備があります。`と表示される状態です。
240
+
241
+
242
+
243
+
240
244
 
241
245
  ②リダイレクト先を`redirect_to contact_mails_path(@contact)`に変更
242
246
 
243
247
 
244
248
 
245
- ①と②を行うと
246
-
247
- `Unknown action`
248
-
249
- `The action 'index' could not be found for ContactMailsController`
250
-
251
- と出てしまいます。
252
-
253
-
254
-
255
-
256
-
257
- コントローラの記述が悪いのだと思っていますが、どこが原因なのでしょうか。。。
249
+ どこが原因なのでしょうか。。。
258
-
259
-
260
-
261
- また、「Rails wayにしたがって」という部分は参考書のことなのでしょうか?
262
-
263
-
264
-
265
- プログラミング初心者で、基礎的な部分なのかと思いお恥ずかしいのですが、ご教示頂きたいです。