質問編集履歴

4

文章を編集しました。

2019/12/14 10:54

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -236,6 +236,24 @@
236
236
 
237
237
  private
238
238
 
239
+
240
+
241
+ def user_params
242
+
243
+ params.require(:user).permit(:name, :introduction, :profile_image_id)
244
+
245
+ end
246
+
247
+
248
+
249
+ def book_params
250
+
251
+ params.require(:book).permit(:title, :body)
252
+
253
+ end
254
+
255
+ end
256
+
239
257
  ```
240
258
 
241
259
 

3

コードを追記しました。

2019/12/14 10:54

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -279,3 +279,143 @@
279
279
  18 end
280
280
 
281
281
  ```
282
+
283
+
284
+
285
+ 【追記2】
286
+
287
+ ```
288
+
289
+ user/show.html.erb
290
+
291
+
292
+
293
+ <%= render 'shared/header' %>
294
+
295
+
296
+
297
+ <div class="top">
298
+
299
+
300
+
301
+ <div class="container">
302
+
303
+ <div class="row">
304
+
305
+ <div class="col-lg-3">
306
+
307
+
308
+
309
+ <p>User info</p>
310
+
311
+ <%= attachment_image_tag @user, :profile_image, :fill, 150, 150, format: 'jpeg', fallback: "no_image.jpg", size:'150x150' %>
312
+
313
+ <table class="table">
314
+
315
+ <tr>
316
+
317
+    <th>name</th>
318
+
319
+    <th><%= current_user.name %></th>
320
+
321
+   </tr>
322
+
323
+   <tr>
324
+
325
+    <th>introduction</th>
326
+
327
+    <th><%= current_user.introduction %></th>
328
+
329
+    </tr>
330
+
331
+ </table>
332
+
333
+ <%= link_to edit_user_path(@user.id), class: "btn btn-default" do %>
334
+
335
+ <i class="fa fa-wrench"></i>
336
+
337
+ <% end %>
338
+
339
+ <p>New book</p>
340
+
341
+ <%= form_for @book do |f| %>
342
+
343
+ <p>Title</p>
344
+
345
+ <%= f.text_field :title %>
346
+
347
+ <p>Opinion</p>
348
+
349
+ <%= f.text_area :body %>
350
+
351
+ <%= f.submit 'Create Book' %>
352
+
353
+ <% end %>
354
+
355
+ </div>
356
+
357
+
358
+
359
+ <div class="col-lg-9">
360
+
361
+ <p>Books</p>
362
+
363
+ <table class="table table-hover">
364
+
365
+
366
+
367
+ <thead>
368
+
369
+ <tr>
370
+
371
+ <th></th>
372
+
373
+ <th>Title</th>
374
+
375
+ <th>Opinion</th>
376
+
377
+ <th></th>
378
+
379
+ </tr>
380
+
381
+ </thead>
382
+
383
+ <% @books.each do |book| %>
384
+
385
+ <tbody>
386
+
387
+ <tr>
388
+
389
+ <td><%= attachment_image_tag @user, :profile_image, :fill, 50, 50, format: 'jpeg', fallback: "no_image.jpg", size:'50x50' %></td>
390
+
391
+ <td><%= link_to book_path(book.id) do %><%= book.title %><% end %></td>
392
+
393
+ <td><%= book.body %></td>
394
+
395
+ </tr>
396
+
397
+ </tbody>
398
+
399
+ <% end %>
400
+
401
+ </table>
402
+
403
+ </div>
404
+
405
+
406
+
407
+ </div>
408
+
409
+ </div>
410
+
411
+
412
+
413
+ </div>
414
+
415
+
416
+
417
+ <%= render 'shared/footer' %>
418
+
419
+ ```
420
+
421
+ <td><%= link_to book_path(book.id) do %><%= book.title %><% end %></td>でbook/show.html.erbに移動します。

2

文章を編集しました。

2019/12/14 10:45

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -254,6 +254,8 @@
254
254
 
255
255
  表示したいページはidが13の投稿の詳細画面です。
256
256
 
257
+ privateにuserのストロングパラメータを追加しても解決できませんでした。
258
+
257
259
  userが誤ってbookのidを取得しようとしているということでしょうか?
258
260
 
259
261
 

1

質問を追記しました。

2019/12/13 13:41

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -243,3 +243,37 @@
243
243
  また、user/show.html.erbにも<%= link_to edit_user_path(@user.id), class: "btn btn-default" do %>の記述がありますが、問題なく機能しています。
244
244
 
245
245
  コントローラの記述の仕方によるのでしょうか?
246
+
247
+
248
+
249
+ 【追記】
250
+
251
+ books_controller.rbのshowに@userを追記したところ以下のようなエラーが発生しました。
252
+
253
+ エラー文の「Couldn't find User with 'id'=13」の13は投稿した本のidで、投稿したユーザーのidは2です。
254
+
255
+ 表示したいページはidが13の投稿の詳細画面です。
256
+
257
+ userが誤ってbookのidを取得しようとしているということでしょうか?
258
+
259
+
260
+
261
+ ```
262
+
263
+ ActiveRecord::RecordNotFound in BooksController#show
264
+
265
+ Couldn't find User with 'id'=13
266
+
267
+ Extracted source (around line #16):
268
+
269
+
270
+
271
+ 15 def show
272
+
273
+ 16 @user = User.find(params[:id])
274
+
275
+ 17 @book = Book.find(params[:id])
276
+
277
+ 18 end
278
+
279
+ ```