Ruby on rails ActiveRecord作用域不工作

Ruby on rails ActiveRecord作用域不工作,ruby-on-rails,ruby,activerecord,Ruby On Rails,Ruby,Activerecord,我有以下关系: class User < ActiveRecord::Base has_many :incoming_delegations, :class_name => "Delegation", :foreign_key => :to_user_id, :conditions => { :active => true } #... end 但当我尝试时: User.last.incoming_delegations.from(User

我有以下关系:

class User < ActiveRecord::Base
  has_many :incoming_delegations,
    :class_name => "Delegation", :foreign_key => :to_user_id,
    :conditions => { :active => true }
  #...
end
但当我尝试时:

User.last.incoming_delegations.from(User.find(43))
然后我得到以下错误消息:

TypeError: Cannot visit User
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:25:in `rescue in visit'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:19:in `visit'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:281:in `visit_Arel_Nodes_JoinSource'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:19:in `visit'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:135:in `visit_Arel_Nodes_SelectCore'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/mysql.rb:41:in `visit_Arel_Nodes_SelectCore'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:121:in `block in visit_Arel_Nodes_SelectStatement'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:121:in `map'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:121:in `visit_Arel_Nodes_SelectStatement'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/mysql.rb:36:in `visit_Arel_Nodes_SelectStatement'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:19:in `visit'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:5:in `accept'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:19:in `accept'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/bind_visitor.rb:11:in `accept'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/database_statements.rb:18:i
... 1 levels...
知道是什么导致了这个问题吗

scope :from, lambda { |user| where(:from_user_id => user.id) }
from
对于范围来说是个坏名字将其命名为其他名称

当您试图从
委派
类中的范围调用
时,ARel中的正在使用

from
对于范围来说是个坏名字将其命名为其他名称

当您试图从
委派
类中的
范围调用
时,ARel中的正在使用

TypeError: Cannot visit User
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:25:in `rescue in visit'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:19:in `visit'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:281:in `visit_Arel_Nodes_JoinSource'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:19:in `visit'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:135:in `visit_Arel_Nodes_SelectCore'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/mysql.rb:41:in `visit_Arel_Nodes_SelectCore'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:121:in `block in visit_Arel_Nodes_SelectStatement'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:121:in `map'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:121:in `visit_Arel_Nodes_SelectStatement'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/mysql.rb:36:in `visit_Arel_Nodes_SelectStatement'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:19:in `visit'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/visitor.rb:5:in `accept'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/to_sql.rb:19:in `accept'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/arel-3.0.2/lib/arel/visitors/bind_visitor.rb:11:in `accept'
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in
        from /home/jiri/.rvm/gems/ruby-1.9.3-p194@OM/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/database_statements.rb:18:i
... 1 levels...
scope :from, lambda { |user| where(:from_user_id => user.id) }