ActiveRecord.find错误的参数数量2表示1

时间:2015-01-13 20:56:31

标签: ruby-on-rails ruby activerecord

User.find(16)
ArgumentError: wrong number of arguments (2 for 1)
from /app/vendor/bundle/ruby/2.2.0/gems/activerecord-4.2.0/lib/active_record/relation/query_methods.rb:964:in `create_binds'

我只通过了1个参数,16。第二个论点来自哪里?

用户加载正常:

=> class User < ActiveRecord::Base {
                      :id => :integer,
                   :email => :string,
      :encrypted_password => :string,
    :reset_password_token => :string,
  :reset_password_sent_at => :datetime,
     :remember_created_at => :datetime,
           :sign_in_count => :integer,
      :current_sign_in_at => :datetime,
         :last_sign_in_at => :datetime,
      :current_sign_in_ip => :string,

1 个答案:

答案 0 :(得分:0)

您使用Squeel吗? Squeel还不兼容Rails 4.2。同时,您可以使用Github版本:

gem "squeel", github: "danielrhodes/squeel"

请注意,这不是官方存储库,但会向官方存储库提出更改(PR)。