質問編集履歴
4
その後試したこと(ルーティングの編集)について経過を追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -218,17 +218,55 @@
|
|
218
218
|
|
219
219
|
|
220
220
|
|
221
|
-
### 試したこと
|
221
|
+
### その後、試したこと
|
222
|
+
|
222
|
-
|
223
|
+
上記の質問をさせて頂いてから、数日が経過しました。
|
223
|
-
|
224
|
-
|
224
|
+
|
225
|
+
|
226
|
+
|
225
|
-
|
227
|
+
「rooms/index」に飛んでいるにも関わらず「RoomsController#show」でエラーが発生している点がおかしいと思い調べた所、
|
228
|
+
|
226
|
-
|
229
|
+
resourcesでルーティングを定義した場合のエラーについて[こちら](https://teratail.com/questions/68249)に書かれていた為、参考にして以下の様にルーティングを変更しました。
|
230
|
+
|
231
|
+
|
232
|
+
|
227
|
-
```Ruby
|
233
|
+
```Ruby
|
234
|
+
|
228
|
-
|
235
|
+
resources :rooms, :only => [:create, :show, :index]
|
236
|
+
|
237
|
+
↓
|
238
|
+
|
229
|
-
|
239
|
+
get 'rooms/index' => 'rooms#index'
|
240
|
+
|
230
|
-
|
241
|
+
resources :rooms, :only => [:create, :show]
|
242
|
+
|
231
|
-
```
|
243
|
+
```
|
244
|
+
|
245
|
+
すると「RoomsController#index」をしっかりと読み込んでくれました。
|
246
|
+
|
247
|
+
しかし今度は「RoomsController#index」内で以下のエラーが発生しました。
|
248
|
+
|
249
|
+
|
250
|
+
|
251
|
+
```
|
252
|
+
|
253
|
+
NoMethodError in RoomsController#index
|
254
|
+
|
255
|
+
undefined method `id' for nil:NilClass
|
256
|
+
|
257
|
+
Extracted source (around line #28):
|
258
|
+
|
259
|
+
|
260
|
+
|
261
|
+
@anotherEntries = Entry.where(room_id: myRoomIds).where('user_id != ?', @user.id)
|
262
|
+
|
263
|
+
end
|
264
|
+
|
265
|
+
end
|
266
|
+
|
267
|
+
```
|
268
|
+
|
269
|
+
自分でも解決に向け色々と調べておりますが、どなたか原因が分かる方がいらっしゃれば教えて頂けると有難いです。
|
232
270
|
|
233
271
|
|
234
272
|
|
3
タイトルや「前提・実現したいこと」に編集を加えました。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
【Rails】DM一覧ページ
|
1
|
+
【Rails】DM一覧ページでエラーが表示される
|
test
CHANGED
@@ -6,7 +6,9 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
しかし
|
9
|
+
しかしルーティングの設定の仕方が悪いのか、エラーが表示されてしまいます。
|
10
|
+
|
11
|
+
どなたかお知恵を拝借頂けると幸いです。
|
10
12
|
|
11
13
|
|
12
14
|
|
@@ -220,11 +222,11 @@
|
|
220
222
|
|
221
223
|
|
222
224
|
|
223
|
-
ヘッダーからリンクに飛ばしたいので以下の様に書いてみましたが、間違っているようでページが表示されません。。
|
225
|
+
ヘッダーからリンクに飛ばしたいので、「application.html.erb」のヘッダー部分を以下の様に書いてみましたが、間違っているようでページが表示されません。。
|
224
|
-
|
226
|
+
|
225
|
-
```Ruby
|
227
|
+
```Ruby
|
226
|
-
|
228
|
+
|
227
|
-
<%= link_to("Messages", "/rooms/
|
229
|
+
<%= link_to("Messages", "/rooms/index", class: "link") %>
|
228
230
|
|
229
231
|
```
|
230
232
|
|
2
エラーメッセージとroutes.rbを追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -10,6 +10,34 @@
|
|
10
10
|
|
11
11
|
|
12
12
|
|
13
|
+
### 発生している問題・エラーメッセージ
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
```
|
18
|
+
|
19
|
+
ActiveRecord::RecordNotFound in RoomsController#show
|
20
|
+
|
21
|
+
Couldn't find Room with 'id'=index
|
22
|
+
|
23
|
+
Extracted source (around line #10):
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
def show
|
28
|
+
|
29
|
+
**@room = Room.find(params[:id])**
|
30
|
+
|
31
|
+
if Entry.where(:user_id => @current_user.id, :room_id => @room.id).present?
|
32
|
+
|
33
|
+
@messages = @room.messages
|
34
|
+
|
35
|
+
@message = Message.new
|
36
|
+
|
37
|
+
```
|
38
|
+
|
39
|
+
|
40
|
+
|
13
41
|
### rooms_controller.rb
|
14
42
|
|
15
43
|
|
@@ -96,6 +124,98 @@
|
|
96
124
|
|
97
125
|
|
98
126
|
|
127
|
+
### routes.rb
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
```Ruby
|
132
|
+
|
133
|
+
Rails.application.routes.draw do
|
134
|
+
|
135
|
+
post "likes/:post_id/create" => "likes#create"
|
136
|
+
|
137
|
+
post "likes/:post_id/destroy" => "likes#destroy"
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
get "login" => "users#login_form"
|
142
|
+
|
143
|
+
post "login" => "users#login"
|
144
|
+
|
145
|
+
post "logout" => "users#logout"
|
146
|
+
|
147
|
+
|
148
|
+
|
149
|
+
post "users/:id/update" => "users#update"
|
150
|
+
|
151
|
+
get "users/:id/edit" => "users#edit"
|
152
|
+
|
153
|
+
post "users/create" => "users#create"
|
154
|
+
|
155
|
+
get "signup" => "users#new"
|
156
|
+
|
157
|
+
get 'users/index' => 'users#index'
|
158
|
+
|
159
|
+
get "users/:id" => "users#show"
|
160
|
+
|
161
|
+
get "users/:id/follow" => "users#follow"
|
162
|
+
|
163
|
+
get "/" => "users#top"
|
164
|
+
|
165
|
+
post "users/:id/destroy" => "users#destroy"
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
get 'posts/index'=> 'posts#index'
|
170
|
+
|
171
|
+
get "posts/new" => "posts#new"
|
172
|
+
|
173
|
+
get "posts/:id" => "posts#show"
|
174
|
+
|
175
|
+
post "posts/create" => "posts#create"
|
176
|
+
|
177
|
+
get "posts/:id/edit" => "posts#edit"
|
178
|
+
|
179
|
+
post "posts/:id/update" => "posts#update"
|
180
|
+
|
181
|
+
post "posts/:id/destroy" => "posts#destroy"
|
182
|
+
|
183
|
+
get "posts/search" => "posts#search"
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
get 'about/about'
|
188
|
+
|
189
|
+
get 'home/top' => 'home#top'
|
190
|
+
|
191
|
+
get 'top' => 'home#top'
|
192
|
+
|
193
|
+
get 'about' => 'about#about'
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
resources :users do
|
198
|
+
|
199
|
+
member do
|
200
|
+
|
201
|
+
get :following, :followers, :users_tweets
|
202
|
+
|
203
|
+
end
|
204
|
+
|
205
|
+
end
|
206
|
+
|
207
|
+
resources :relationships, only: [:create, :destroy]
|
208
|
+
|
209
|
+
|
210
|
+
|
211
|
+
resources :messages, :only => [:create]
|
212
|
+
|
213
|
+
resources :rooms, :only => [:create, :show, :index]
|
214
|
+
|
215
|
+
```
|
216
|
+
|
217
|
+
|
218
|
+
|
99
219
|
### 試したこと
|
100
220
|
|
101
221
|
|
@@ -110,8 +230,6 @@
|
|
110
230
|
|
111
231
|
|
112
232
|
|
113
|
-
|
114
|
-
|
115
233
|
### 補足情報(FW/ツールのバージョンなど)
|
116
234
|
|
117
235
|
|
1
タイトルに【Rails】を追記しました。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
DM一覧ページのルーティングと表示について
|
1
|
+
【Rails】DM一覧ページのルーティングと表示について
|
test
CHANGED
File without changes
|