我嵌套了我的资源(见下文),当我尝试创建一个新实体时,我收到以下错误。有谁知道我为什么会收到这个错误以及如何解决它?
nil的未定义方法`applications':NilClass
resources careers do
resources applications
end
在'Applications'控制器中我有:
before_filter [[:authenticate, :except => :new], :load_career]
def create
# The following line is where the error originates
@application = @career.applications.new(params[:application])
respond_to do |format|
...
end
end
private
def load_career
@career = Career.find(params[:career_id])
end
Career
和Application
模型分别有has_many :applications
和belongs_to :career
。
'* _create_applications'迁移有一个career_id
字段。
答案 0 :(得分:0)
我从未见过before_filters这样定义。我只是在Rails 3中尝试过它似乎没有做任何事情。我会给每个回调它自己的before_filter调用:
before_filter :authenticate, :except => :new
before_filter :load_career