Ruby on rails Rails—POST请求数等于GET请求数
我正在尝试实现这个购物车应用程序,但出于某种原因,POST请求的数量似乎等于过去GET请求的总和。这会导致一些恼人的行为! 我不明白为什么。。有人有主意吗 应用程序控制器:Ruby on rails Rails—POST请求数等于GET请求数,ruby-on-rails,post,model-view-controller,get,shopping-cart,Ruby On Rails,Post,Model View Controller,Get,Shopping Cart,我正在尝试实现这个购物车应用程序,但出于某种原因,POST请求的数量似乎等于过去GET请求的总和。这会导致一些恼人的行为! 我不明白为什么。。有人有主意吗 应用程序控制器: before_filter :current_delivery def current_delivery if session[:delivery_id] @delivery = Delivery.find(session[:delivery_id]) else @delivery =
before_filter :current_delivery
def current_delivery
if session[:delivery_id]
@delivery = Delivery.find(session[:delivery_id])
else
@delivery = Delivery.create
session[:delivery_id] = @delivery.id
end
end
def create
@delivery.order_items.new(order_item_params)
@delivery.save
end
def index
@products = Product.all
@order_item = OrderItem.new
end
OrderItemsController:
before_filter :current_delivery
def current_delivery
if session[:delivery_id]
@delivery = Delivery.find(session[:delivery_id])
else
@delivery = Delivery.create
session[:delivery_id] = @delivery.id
end
end
def create
@delivery.order_items.new(order_item_params)
@delivery.save
end
def index
@products = Product.all
@order_item = OrderItem.new
end
产品控制器:
before_filter :current_delivery
def current_delivery
if session[:delivery_id]
@delivery = Delivery.find(session[:delivery_id])
else
@delivery = Delivery.create
session[:delivery_id] = @delivery.id
end
end
def create
@delivery.order_items.new(order_item_params)
@delivery.save
end
def index
@products = Product.all
@order_item = OrderItem.new
end
产品指数:
<% @products.each do |product| %>
<%= render "product_row", product: product %>
<% end %>
=>部分产品行:
<%= form_for @order_item, remote: true do |f| %>
<%= f.number_field :quantity, value: 1, class: "form-control", min: 1 %>
<%= f.hidden_field :product_id, value: product.id %>
<%= f.submit "Add to Cart", class: "btn btn-primary" %>
<% end %>
问题到底是什么?问题是发送了太多的POST请求。例如,当我按Add to Cart时,产品添加次数过多。。