Ruby on rails 从3.2升级到4之后如何更新CollectionProxy的rails代码

Ruby on rails 从3.2升级到4之后如何更新CollectionProxy的rails代码,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,我有一段在Rails3.2上运行的代码 现在,与Rails 4一样,它返回一个ActiveRecord::Associations::CollectionProxy::ActiveRecord\u Associations\u CollectionProxy\u任务,而不是一个数组 更新这段代码的正确方法是什么?我不确定我建议的解决方案,因为我不知道您是否完成了代码,但我认为如果您必须在这里检查,您是否在arg中获得了结果。您也可以通过以下方式执行此操作:- arg = Project.firs

我有一段在Rails3.2上运行的代码

现在,与Rails 4一样,它返回一个ActiveRecord::Associations::CollectionProxy::ActiveRecord\u Associations\u CollectionProxy\u任务,而不是一个数组


更新这段代码的正确方法是什么?

我不确定我建议的解决方案,因为我不知道您是否完成了代码,但我认为如果您必须在这里检查,您是否在arg中获得了结果。您也可以通过以下方式执行此操作:-

arg = Project.first.tasks
return arg.map{|l| identifier_for l } unless arg.blank?
我所做的是:

if arg.kind_of?(ActiveRecord::Associations::CollectionProxy)
  return arg.map{|l| identifier_for l }
end
请任何人确认这是否是正确的方法

if arg.kind_of?(ActiveRecord::Associations::CollectionProxy)
  return arg.map{|l| identifier_for l }
end