質問編集履歴

2

コードの追加

2021/02/11 15:14

投稿

hatopopo21
hatopopo21

スコア40

test CHANGED
File without changes
test CHANGED
@@ -36,11 +36,9 @@
36
36
 
37
37
  そのために、メモ毎に編集できるようにしたいと思いました。
38
38
 
39
- ですが、メモのidを取得することができません。
39
+
40
-
41
-
42
-
40
+
43
- 具体的なURLに関しまして
41
+ 私のイメージしているURLは
44
42
 
45
43
  http://localhost:3000/rooms/11/memos/1/edit
46
44
 
@@ -48,13 +46,153 @@
48
46
 
49
47
 
50
48
 
51
- railsガイドをみてみると、
52
-
53
- ネストしたルーティングの子要素はidを使用するメンバー(:show, :edit, :update, :destroy)は使用しない方が良いと記載されていました。
54
-
55
-
56
-
57
- 自分なりに、試してはみたのですが、取得することができません。
49
+ しかし自分なりに、試してはみたのですが、memoのidを取得することができません。
50
+
51
+
52
+
53
+ veiw
54
+
55
+ ```Ruby
56
+
57
+ <div class="memo-contents">
58
+
59
+ <div class="memo-area">
60
+
61
+ <% @memos.each do |memo| %>
62
+
63
+ <div class="box25">
64
+
65
+ <p><%= memo.content %></p>
66
+
67
+
68
+
69
+ <%= link_to '編集', edit_room_memo_path(@room, @memo), class: "edit-btn" %>
70
+
71
+ <%= link_to '削除', "/rooms/#{@room.id}/memos/#{@memo.id}", method: :delete, class: "delete-btn", data: { confirm: '削除しますか?' } %>
72
+
73
+ </div>
74
+
75
+ <% end %>
76
+
77
+ </div>
78
+
79
+ </div>
80
+
81
+
82
+
83
+ ```
84
+
85
+
86
+
87
+ controller
88
+
89
+ ```Ruby
90
+
91
+ class MemosController < ApplicationController
92
+
93
+
94
+
95
+ def index
96
+
97
+ @rooms = Room.all
98
+
99
+ @memo = Memo.all
100
+
101
+ @events = Event.all
102
+
103
+ @memo = Memo.new
104
+
105
+ @event = Event.new
106
+
107
+ @room = Room.find(params[:room_id])
108
+
109
+ @memos = @room.memos.includes(:user)
110
+
111
+ end
112
+
113
+
114
+
115
+ def create
116
+
117
+ @room = Room.find(params[:room_id])
118
+
119
+ @memo = @room.memos.new(memo_params)
120
+
121
+ if @memo.save
122
+
123
+ redirect_to room_memos_path(@room)
124
+
125
+ else
126
+
127
+ render :index
128
+
129
+ end
130
+
131
+ end
132
+
133
+
134
+
135
+ def edit
136
+
137
+ @memo = Room.find(params[:id])
138
+
139
+ end
140
+
141
+
142
+
143
+ def update
144
+
145
+ end
146
+
147
+
148
+
149
+ def destroy
150
+
151
+ end
152
+
153
+
154
+
155
+ private
156
+
157
+ def memo_params
158
+
159
+ params.require(:memo).permit(:content).merge(user_id: current_user.id)
160
+
161
+ end
162
+
163
+ end
164
+
165
+ ```
166
+
167
+
168
+
169
+ routes
170
+
171
+ ```Ruby
172
+
173
+ room_memos GET /rooms/:room_id/memos(.:format) memos#index
174
+
175
+ POST /rooms/:room_id/memos(.:format) memos#create
176
+
177
+ edit_room_memo GET /rooms/:room_id/memos/:id/edit(.:format) memos#edit
178
+
179
+ room_memo GET /rooms/:room_id/memos/:id(.:format) memos#show
180
+
181
+ PATCH /rooms/:room_id/memos/:id(.:format) memos#update
182
+
183
+ PUT /rooms/:room_id/memos/:id(.:format) memos#update
184
+
185
+ DELETE /rooms/:room_id/memos/:id(.:format) memos#destroy
186
+
187
+ rooms POST /rooms(.:format) rooms#create
188
+
189
+ new_room GET /rooms/new(.:format) rooms#new
190
+
191
+ room DELETE /rooms/:id(.:format) rooms#destroy
192
+
193
+ ```
194
+
195
+
58
196
 
59
197
 
60
198
 

1

修正依頼の追加

2021/02/11 15:13

投稿

hatopopo21
hatopopo21

スコア40

test CHANGED
File without changes
test CHANGED
@@ -40,6 +40,14 @@
40
40
 
41
41
 
42
42
 
43
+ 具体的なURLに関しましては、
44
+
45
+ http://localhost:3000/rooms/11/memos/1/edit
46
+
47
+ ルーム13にあるメモ1番を修正するといった具合にしたいです。
48
+
49
+
50
+
43
51
  railsガイドをみてみると、
44
52
 
45
53
  ネストしたルーティングの子要素はidを使用するメンバー(:show, :edit, :update, :destroy)は使用しない方が良いと記載されていました。