为什么我会在我的Heroku应用程序上获得NoMethodError,当相同的代码在我的本地设置上完美地工作?Heroku上的Rails关联失败,但在本地框上工作?
错误是由该代码触发:
@customer = Customer.find(1)
@customer.responses.create(:offer_id => '1', :digit => '2')
该代码工作按计划我的本地服务器上,并在我的本地Rails的控制台。
然而,在Heroku上述代码触发NoMethodError:
NoMethodError (undefined method `responses' for #<Customer:0x7f7bcbee3808>):
的响应模型由belongs_to的方式绑在客户模型:客户
另外,I可以登录到Heroku控制台并运行该程序,没有任何问题:
Response.create(:offer_id => '1', :customer_id => '1', :digit => '2')
因此,如果上述工作和两个版本都在我的本地框上正常工作,为什么会在Heroku上失败?
-
的运转轨道3.0.6并在Heroku的Ruby 1.8.7和Ruby 1.9.2
数据库测试是相同的在Heroku和我的本地框。
是':belongs_to:customer'类型。应该是'belongs_to:customer' – s84 2011-04-07 01:05:55
如果你使用R3,你应该使用Ruby> 1.9.1 – s84 2011-04-07 01:06:39
@Sam为什么对于1.9.1的建议? RoR 3在1.8.7上有什么特别的问题? – Zabba 2011-04-07 01:11:22