使用嵌套资源发布

时间:2011-05-18 14:34:24

标签: ruby-on-rails-3

我嵌套了我的资源(见下文),当我尝试创建一个新实体时,我收到以下错误。有谁知道我为什么会收到这个错误以及如何解决它?

  

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

CareerApplication模型分别有has_many :applicationsbelongs_to :career

'* _create_applications'迁移有一个career_id字段。

1 个答案:

答案 0 :(得分:0)

我从未见过before_filters这样定义。我只是在Rails 3中尝试过它似乎没有做任何事情。我会给每个回调它自己的before_filter调用:

before_filter :authenticate, :except => :new
before_filter :load_career