0

我是 RoR 的新手,目前正在使用我的第一个应用程序。
我有 3 个模型:Event、Place 和 Order

class Event < ActiveRecord::Base
  attr_accessible :name
  has_many :places
end

class Place < ActiveRecord::Base
  attr_accessible :number, :price, :event_id
  has_one :order
  belongs_to :event
end

class Order < ActiveRecord::Base
 attr_accessible :place_number, :price, :place_id
  belongs_to :place
end

路线,顺便说一句,当我深深嵌套它时,至少新动作没有出错。

    resources :events do
       resources :places 
    end

    resources :places do
     resources :orders
  end

我在创建新订单时遇到了问题。错误是

ActiveRecord::RecordNotFound in OrdersController#new

Couldn't find Event without an ID

这是我的 OrdersController(not full) 导致它在我的代码的第一行失败

class OrdersController < ApplicationController

  def new
    @event = Event.find(params[:id])
  end
end

再说一遍我应该做的。我通过获取有关用户点击的地点和事件的信息来创建新订单。所以我认为我需要在 NEW 动作中以及稍后在 CREATE 中使用这些变量来获取有关事件和地点的信息。

4

0 回答 0