質問編集履歴

2

メンバーはデータベースにあるnameから選べるようにしました。

2019/11/24 12:36

投稿

nasuk47
nasuk47

スコア311

test CHANGED
File without changes
test CHANGED
@@ -152,9 +152,9 @@
152
152
 
153
153
  = form_for @comment do |f|
154
154
 
155
- = fields_for(@member) do |member|
155
+ = fields_for :members do |m|
156
156
 
157
- = member.text_field :name, class: 'form__member', placeholder: 'メンバーの名前を入力してください'
157
+ = m.collection_select :member_id, Member.all, :id, :name, include_blank: true
158
158
 
159
159
  = f.text_field :place, class: 'form__place', placeholder: '観光地を入力してください'
160
160
 

1

https://qiita.com/tomoharutsutsumi/items/761bdb114883f12edcd2を参考にcommentのcontrollerとviewを変更するとエラーが出る

2019/11/24 12:35

投稿

nasuk47
nasuk47

スコア311

test CHANGED
File without changes
test CHANGED
@@ -2,11 +2,9 @@
2
2
 
3
3
 
4
4
 
5
- ここ質問の内容を詳しく書てください。
5
+ 中間テーブルとmemberのテーブルデータが保存できな
6
6
 
7
- フォーム投稿時にメンバーの名前とコメント(場所、コメント、image)を保存する時に
8
7
 
9
- メンバーとコメントでそれぞれ保存されて中間テーブルに保存がされていない状況なのでメンバーのidとコメントのidを紐付けたい
10
8
 
11
9
  ### 発生している問題・エラーメッセージ
12
10
 
@@ -14,7 +12,9 @@
14
12
 
15
13
  ```
16
14
 
17
- 中間テーブルにデータが保存されない
15
+ ArgumentError in CommentsController#new
16
+
17
+ Unknown key: :allow_destory. Valid keys are: :allow_destroy, :reject_if, :limit, :update_only
18
18
 
19
19
  ```
20
20
 
@@ -94,7 +94,7 @@
94
94
 
95
95
  @comment = Comment.new
96
96
 
97
- @member = Member.new
97
+ @comment.member_comments.build
98
98
 
99
99
  end
100
100
 
@@ -104,9 +104,7 @@
104
104
 
105
105
  @comment = Comment.new(comment_params)
106
106
 
107
- @member = Member.new(member_params)
108
-
109
- if @comment.save && @member.save
107
+ if @comment.save
110
108
 
111
109
  redirect_to comments_path
112
110
 
@@ -136,15 +134,7 @@
136
134
 
137
135
  def comment_params
138
136
 
139
- params.require(:comment).permit(:place, :text, :image_url)
137
+ params.require(:comment).permit(:place, :text, :image_url, member_comments_attributes:[:member_id])
140
-
141
- end
142
-
143
-
144
-
145
- def member_params
146
-
147
- params.require(:member).permit(:name)
148
138
 
149
139
  end
150
140