こんにちは、なぜセッションが更新時に予約を見つけられず、他のコントローラーで使用されたのか疑問に思っています
これは私のアプリケーションコントローラーです
helper :all # include all helpers, all the time
private
def current_reservation
@reservation ||= Reservation.find(session[:reservation_id]) if session[:reservation_id]
#last assigned value will be returned as default.
end
def create_reservation_session(id)
session[:reservation_id] = id
end
def destroy_reservation_session
session[:reservation_id] = nil
end
ここで私たちにそれをしようとしています
def new
@book_reservation = BookReservation.new
end
def create
@reservation = current_reservation
@book_reservation=@reservation.build_book_reservation(params[:book_reservation])
if @book_reservation.save
#If success set session
create_reservation_session(@reservation.id)
#redirect_to root_url, :notice => "Successfully created book reservation."
else
render :action => 'new'
end
end
undefined method
nil:NilClass` エラーに対して build_book_reservation' が発生します
model/book_reservation.rb
belongs_to :reservation
モデル/予約.rb
has_one :book_reservation