nil的未定义方法`new':NilClass - rails 3.1.0中has_one嵌套关联有什么问题?

时间:2012-02-07 02:31:47

标签: ruby-on-rails ruby-on-rails-3.1

我们的应用程序中有quote和test_plan。关系是引用has_one test_plan和test_plan belongs_to引用。在路线文件中,它是:

  resources :test_plans, :only => [:index]
  resources :quotes do
    resources :test_plans
  end

问题是@ quote.test_plan返回nil(而不是对象)而@ quote.test_plan.new()导致错误说未定义方法new()。有关这个问题的任何想法?非常感谢。

1 个答案:

答案 0 :(得分:3)

@test_plan = @quote.build_test_plan 

使用@quote设置的外键创建一个@test_plan对象。这解决了这个问题。