回答編集履歴

1

回答に不備があったため

2022/09/17 12:59

投稿

pi-nattu
pi-nattu

スコア61

test CHANGED
@@ -17,16 +17,17 @@
17
17
  > '/admin/items/item.id'と記述を変えてみたところ、このエラーはなくなった?のですが今度はActiveRecord::RecordNotFound in Admin::ItemsController#updateCouldn't find Item with 'id'=itemとエラーが出てしまいました。
18
18
  解決していたわけではなく、エラーの表記が変わっていただけのようです。
19
19
  (この解釈はもしかしたら間違っているのかもしれませんが......)
20
- そしてんに聞きまして、改めてルートパスを確認して解決できました。
21
20
 
22
- ルーティング記述方法がそそも間違ていたので変更、引数の設定ができていなかったのでパスに(@item.id)を引数として設定してあげることで更新可能になりました
21
+ リダイレクト先パスも間違ていたので修正しました
23
- ↓解決前
22
+ ↓解決前(adminが抜けている)
24
23
  ```ruby
25
- #admin/items/edit.html.erb
24
+ #items_controller.rb
26
- <%= form_with model: @item,url: 'admin_items_(items.id)_path)', method: :patch do |f| %>
25
+ redirect_to items_path
27
26
  ```
27
+
28
28
  ↓解決後
29
29
  ```ruby
30
- #admin/items/edit.html.erb
30
+ #items_controller.rb
31
- <%= form_with model: @item, url: admin_item_path(@item.id), method: :patch do |f| %>
31
+ redirect_to admin_items_path
32
32
  ```
33
+ 今後はよりパスの記述について気を付けていこうと思いました。