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

質問編集履歴

1

save!付け加えてエラー画面を表示させた

2021/12/09 00:59

投稿

iggy-
iggy-

スコア2

title CHANGED
File without changes
body CHANGED
@@ -6,25 +6,48 @@
6
6
  子ユーザーテーブル(human)と排便の記録テーブル(poop)ルーティングのネストさせています。
7
7
  子ユーザーのページにあるフォームから投稿するとターミナル上でエラーが出て保存されません。
8
8
  ストロングパラメーターでIDをマージさせているのですが、保存させれなくて困っています
9
+
10
+ コメントをいただき、修正させていただきました。
11
+
12
+ PoopsControllerに
13
+ @poop.save!
14
+ と付け足すことでエラーの内容が
15
+ ActiveRecord::RecordInvalid in PoopsController#create
16
+ Validation failed: Humans must exist
17
+ となりました。
18
+
9
19
  お忙しいと思いますがぜひご教授お願いします
10
20
 
21
+
11
22
  ### 発生している問題・エラーメッセージ
12
23
 
13
24
  ```
14
- Started POST "/humans/15/poops" for ::1 at 2021-12-08 16:50:45 +0900
15
- Processing by PoopsController#create as HTML
16
- Parameters: {"authenticity_token"=>"9XYS7o1tuQQHhGDofDesU6oz65r/vVar2WgwiTo32rnNlqxIsM76WQEF+9vGOmc/9SLXtnCG12Z/t72imFMwAw==", "poop"=>{"state_id"=>"2", "weight_id"=>"2", "detail"=>"", "start_time(1i)"=>"2021", "start_time(2i)"=>"12", "start_time(3i)"=>"8", "start_time(4i)"=>"07", "start_time(5i)"=>"50"}, "commit"=>"投稿する", "human_id"=>"15"}
17
- User Load (0.5ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 ORDER BY `users`.`id` ASC LIMIT 1
18
- app/controllers/poops_controller.rb:20:in `poop_params'
19
- (0.2ms) BEGIN
20
- app/controllers/poops_controller.rb:12:in `create'
21
- User Load (1.3ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1
22
- ↳ app/controllers/poops_controller.rb:12:in `create'
23
- (0.2ms) ROLLBACK
24
- ↳ app/controllers/poops_controller.rb:12:in `create'
25
- Redirected to http://localhost:3000/
26
- Completed 302 Found in 10ms (ActiveRecord: 2.1ms | Allocations: 5174)
25
+ ActiveRecord::RecordInvalid in PoopsController#create
26
+ Validation failed: Humans must exist
27
+ Extracted source (around line #13):
28
+ 11 def create
29
+ 12 @poop = Poop.create(poop_params)
30
+ 13 @poop.save!
31
+ 14 redirect_to root_path
32
+ 15 end
33
+ 16
27
34
 
35
+ Request
36
+ Parameters:
37
+
38
+ {"authenticity_token"=>"BOGqp4VSXR+R00Y2RIVBBbiThd2ghuAXV++5C6Q9DOC1LXAzxCMwm7vfBlO+vBXvwlMvVm9pPyMzPIHn5vWW9A==",
39
+ "poop"=>{"state_id"=>"2", "weight_id"=>"2", "detail"=>"", "start_time(1i)"=>"2021", "start_time(2i)"=>"12", "start_time(3i)"=>"9", "start_time(4i)"=>"00", "start_time(5i)"=>"25"},
40
+ "commit"=>"投稿する",
41
+ "human_id"=>"19"}
42
+
43
+ Toggle session dump
44
+ Toggle env dump
45
+
46
+ Response
47
+ Headers:
48
+
49
+ None
50
+
28
51
  ```
29
52
 
30
53
  ### 該当のソースコード
@@ -42,6 +65,7 @@
42
65
 
43
66
  def create
44
67
  @poop = Poop.create(poop_params)
68
+ @poop.save!
45
69
  redirect_to root_path
46
70
  end
47
71