Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 轨道2->;Rails 3升级失败,用户抱怨关联_Ruby On Rails_Ruby_Ruby On Rails 3_Activerecord_Upgrade - Fatal编程技术网

Ruby on rails 轨道2->;Rails 3升级失败,用户抱怨关联

Ruby on rails 轨道2->;Rails 3升级失败,用户抱怨关联,ruby-on-rails,ruby,ruby-on-rails-3,activerecord,upgrade,Ruby On Rails,Ruby,Ruby On Rails 3,Activerecord,Upgrade,我已经为这个问题挣扎了一段时间,我就是无法处理它 我有一个在Rails 2.3.18/ruby1.8.7上运行良好的站点 我正设法把它送到铁路站。我按照指南进行了视图更新(使用Railsxss)。我现在试图让测试套件通过测试,但遇到了以下奇怪的问题: /Users/jon/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.0.20/lib/active_record/reflection.rb:71: in `r

我已经为这个问题挣扎了一段时间,我就是无法处理它

我有一个在Rails 2.3.18/ruby1.8.7上运行良好的站点

我正设法把它送到铁路站。我按照指南进行了视图更新(使用Railsxss)。我现在试图让测试套件通过测试,但遇到了以下奇怪的问题:

/Users/jon/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.0.20/lib/active_record/reflection.rb:71:
in `reflect_on_association': undefined method `[]'   
for #<ActiveRecord::Reflection::AssociationReflection:0x00000100b607a0> (NoMethodError)
from  /Users/jon/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord- 3.0.20/lib/active_record/autosave_association.rb:138:in `has_many'
from /projects/mau/app/models/studio.rb:7:in `<class:Studio>'
from /projects/mau/app/models/studio.rb:3:in `<top (required)>'
...
from /Users/jon/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.0.20/lib/rails/application.rb:134:in `initialize!'
from /Users/jon/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.0.20/lib/rails/application.rb:77:in `method_missing'
from /projects/mau/config/environment.rb:5:in `<top (required)>'
from /projects/mau/spec/spec_helper.rb:3:in `require'
from /projects/mau/spec/spec_helper.rb:3:in `<top (required)>'
我仍然在项目中使用了
restful\u身份验证
,并计划将其删除,但希望在运行测试套件后可以这样做。此时,我无法运行
rails
任何东西,因为一旦我访问其中一个有问题的对象,事情就会失败

我已经考虑过升级ruby(1.9.3),但仍然遇到同样的问题

我已经深入研究了调试器,但找不到任何相关的东西

我已经尝试指定
所属的
/
与完整的类名和外键有许多
关系-没有区别

我尝试了Rails 3.0.x的不同版本,从3.0.1到3.0.20。没有效果。同样的问题

我尝试了所有的复数和单数组合,因为
有很多
属于
符号

最糟糕的是,我在不同的对象上还有一些其他的关系,这些关系似乎是愉快地建立起来的。它们不涉及
用户
模型,这让我担心这是
restful\u身份验证

我不能,为了我的生命,弄清楚什么是什么。如果有人有任何想法或者以前见过这个,我希望能得到一些帮助

我正在尝试进入Rails 3.0.20,打算从那里向前滚动到3.1,然后再滚动到3.2。我真的很想在3.0.20上得到一个半稳定的版本,然后再进一步推进

提前感谢您提供的任何提示/窍门
罗杰斯先生

我找到了问题的根源

对于旧版本(Rails 2.3.18),我使用的是
具有许多变形。此插件对Rails3不再有效。我在这里升级到了“Rails3兼容版本”,它兼容Rails3.2,但不兼容Rails3.0。这个gem中的代码修补了
ActiveRecord::Reflection::ClassMethods
。该补丁与Rails 3.0.x构建关联的方式不同

我想是时候转向
ActiveRecord的
native:polymorphic支持了

class Studio < ActiveRecord::Base
  has_many :users
  ...
end

class Artist < User
  ...
end 

class User < ActiveRecord::Base
  belongs_to :studio
  ...
end