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

回答編集履歴

1

追記

2017/10/30 03:25

投稿

chelsy7110
chelsy7110

スコア596

answer CHANGED
@@ -44,4 +44,24 @@
44
44
  そうであるなら```@listing.reservations.each```はおかしいと思いますが・・・
45
45
 
46
46
  一応思いつくものを全部書いてみました。
47
- まだまだ基本的な理解が足りないと思いますのでいろいろな本やサイトを見て勉強するのが近道だと思います。
47
+ まだまだ基本的な理解が足りないと思いますのでいろいろな本やサイトを見て勉強するのが近道だと思います。
48
+
49
+ ##### 追記
50
+ > ご指摘の中で「・reservationの方はlisting_idじゃなくてidを見るべき」とあるのですが、
51
+ これは、reservation_controller.rbの中で指示を出しているから、というのが理由なのでしょうか?
52
+
53
+ YousukeTanakaさんのupdateには
54
+ ```ruby
55
+ @reservation = Reservation.find_by(params[:listing_id])
56
+ ```
57
+ と書いてあります。これを正しくすると
58
+ ```ruby
59
+ @reservation = Reservation.find(params[:id])
60
+ ```
61
+ このようにReservationをfindするときには```listing_id```ではなく```id```を見なければいけないということです。
62
+
63
+ > また、同様に確認なのですが、rake routesで
64
+ 「 /listings/:listing_id/reservations/:id/edit(.:format) 」の場合、id要素が2つあります。この場合、
65
+ pathを作成するときは、edit_listing_reservation(@listing, @reservation)と2つのオブジェクトを指定するという理解でおりますが、この理解で間違えないでしょうか?
66
+
67
+ それで間違いないです