0

私はRoRの初心者で、現在最初のアプリを使用しています。
私は3つのモデルを持っています:イベント、場所、注文

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(完全ではない)で、コードの最初の行で失敗します

class OrdersController < ApplicationController

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

やりたいことをもう一度。ユーザーがクリックした場所とイベントに関する情報を取得して、新しい注文を作成しています。したがって、イベントと場所に関する情報を取得するには、これらの変数が NEW アクションで、後で CREATE で必要になると思います。

4

0 に答える 0