2

したがって、私は Rails の初心者であり、明らかな何かが欠けている可能性があります。

これが私のコードです:

Forecasts_controller.rb

def show
    @forecast = Forecast.find(params[:id])      
    @forecast_projects = Project.includes(:project_type).where("forecast_id =?", params[:id])
end

_project.html.erb (このファイルは、Forecast アクションで部分的にレンダリングされたコレクションです)

<%= project.project_type.title %>

何らかの理由で、これにより次のエラーが生成されます。

予測の NoMethodError#show

行番号 1 が発生した /path の表示:

nil:NilClass の未定義のメソッド `title'

奇妙なことに、forecasts_controller.rbを次のように変更すると...

def show
    @forecast = Forecast.find(params[:id])      
    @forecast_projects = Project.joins(:project_type).where("forecast_id =?", params[:id])
end

突然、すべてが完璧に機能し始めます。誰かが私がここで欠けているものを理解するのを手伝ってくれますか (そして私の経験不足を許してください)?

4

2 に答える 2