kobasaです(´ω`*)またしばらく天気悪くなりそうですね。強風はやめて…
商品詳細表示機能は無事LGTM貰えたので、今日は商品編集機能の実装です!
商品出品機能と似たような感じですが、ちょいちょい違うので注意が必要ですね。
そしてレビュー依頼をして明日を待つ。
会社の昼休みくらいには返ってくるので、内容によっては午後からの仕事に影響が出たり?
早く帰って修正したい! or 早く帰ってマージしたい! なのであんま変わらんすけどね😃
実はGyazoGifで添付動画を撮るのが一番苦戦してたりするw
89日目のまとめ
form_with内のボタン
<%= form_with model: @item, url: item_path, local: true do |f| %>
<%= f.submit "変更する" ,class:"sell-btn" %>
<%=link_to 'もどる', item_path(@item.id), class:"back-btn" %>
<% end %>
form_with内のボタンでも「もどる」ボタンのようにフォームにパラメータを送るものでなければ、
ブロック変数を用いずにリンク先を記述することもある。
※link_toメソッドでの記述なので、見た目は送信ボタンぽいがリンク。
updateアクションの流れ
①リクエストで送られてきたidと一致するidを持つレコードをデータベースから取得。
@item = Item.find(params[:id])
②編集フォームから送られてきたパラメータ(item_params自作メソッド)で、
問題なく更新できるか判定。
更新できれば商品の詳細ページへ遷移させる。
更新できなければインスタンスを保持したままeditアクションに飛ばす。
if @item.update(item_params)
redirect_to item_path(@item.id)
else
render :edit
end
コメント