0

这是我的控制器文件:

class OrdersController < ApplicationController

   ...

   def create
     @order = current_user.current_cart.order #get a current order
     if @order.nil?
       @order = current_user.current_cart.build_order #if one does not exist, create it
     end
     @order.update_attributes!(...) #update the attributes
     render :new
   end

   ...
end

undefined method 'order_path'每当我尝试保存/更新订单模型时,我都会收到“ ”错误。

这是视图的简化版本:

<%= form_for @order do |f| %>
  ....
<% end %>

每当@order = Order.new它起作用时,如果我这样做@order = current_user.current_cart.order,它就会起作用。但是,一旦我在渲染模板之前保存或更新某些内容,它就会给我错误。我想保存模型。

在路线中,订单是一个简单的资源:orders。

4

1 回答 1

0

我有同样的错误。当routes.rb

resources :orders, only: [:index, :create, :edit] do
  # ...
end

解决方案

添加:update

resources :orders, only: [:index, :create, :edit, :update] do
  # ...
end
于 2015-10-22T09:22:02.807 回答