コンテキストを説明するために、アプリケーションでエラーが発生しました。ユーザーは複数の車を所有しており、各車はタンキングを行うことができるため、TankingLogsControllerは次のようになります。
class TankingLogsController < ApplicationController
def new
@user = User.find(params[:user_id])
@car = @user.cars.find(params[:car_id])
@tankinglog = @cars.tanking_logs.build
end
end
これは私のroutes.rbファイルです
Estaciones::Application.routes.draw do
root :to => "static_pages#home"
match '/contact', :to=>'static_pages#contact'
match '/about', :to=>'static_pages#about'
devise_for :users
resources :users do
resources :cars do
resources :tanking_logs
end
end
...
このエラーが発生しました:
NoMethodError in TankingLogsController#new
undefined method `tanking_logs' for nil:NilClass
Application Trace | Framework Trace | Full Trace
app/controllers/tanking_logs_controller.rb:5:in `new'
アプリケーションが失敗するのはなぜですか?