🐕
各ステータス更新の作成方法
🍍やりたいこと
注文ステータスと制作ステータスそれぞれ更新できるようにしたい。
🍍作成
注文ステータス
view/admin/orders/show.html.erb
<%= form_with model:@order, url: admin_order_path(@order), method: :patch do |f| %>
<%= f.select :status,Order.statuses.keys.map %>
<%= f.submit '更新', class:"btn btn-outline-success" %>
<% end %>
controllers/admin/orders_controller.rb
def update
@order = Order.find(params[:id])
@order.update(order_params)
redirect_to admin_order_path(@order)
end
private
def order_params
params.require(:order).permit(:status)
end
解説
制作ステータス
view/admin/orders/show.html.erb
<%= form_with model: item, url: admin_order_detail_path(item.id), method: :patch do |f| %>
<%= f.select :making_status, OrderDetail.making_statuses.keys.map %>
<%= f.submit '更新', class:"btn btn-outline-success" %>
<% end %>
controllers/admin/order_details_controller.rb
def update
@order_detail = OrderDetail.find(params[:id])
@order_detail.update(order_detail_params)
redirect_to admin_order_path(@order_detail.order)
end
private
def order_detail_params
params.require(:order_detail).permit(:making_status)
end
解説
Discussion