我有一个ActiveRecord :: Base子类。当我创建一个新实例时,我得到一个参数错误:
ArgumentError:
wrong number of arguments (2 for 1)
这是我的代码:
class Subclass < ActiveRecord::Base
end
Subclass.new(hash, without_protection: true)
宝石版本是:
activemodel (3.2.13)
activerecord (3.2.13)
为什么会产生和参数错误? According to API Dock,inititialize仍然需要从3.2.13开始的两个参数
答案 0 :(得分:0)
看起来RubyGems正在使用不正确版本的ActiveModel。从错误:
/Users/me/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/activerecord-4.0.0/lib/active_record/core.rb:180:in `initialize': wrong number of arguments (2 for 1) (ArgumentError)
不知道为什么,所以发布了另一个问题(这里)[Rubygems加载Gem的错误版本