首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ruby on rails作用域- ArgumentError:错误的参数数量(0对应1)

ruby on rails作用域- ArgumentError:错误的参数数量(0对应1)
EN

Stack Overflow用户
提问于 2013-03-30 02:22:38
回答 1查看 1.2K关注 0票数 0

在调用作用域时,我得到一个错误的参数错误:

代码语言:javascript
复制
Report.start_driver_time(Unit.find(3007),Driver.find(2),3,2013)

  scope :start_driver_time, lambda { |unit, driver, month, year|
    where("unit_id = ? AND
          driver_id = ? AND
          extract(MONTH FROM time) = ? AND
          extract(YEAR FROM time) = ?",
          unit.id, driver.id, month, year)
    .order("time asc")
    .min(:time)
  }
 #select(:time) select([:id, :time])

  scope :next_driver_time, lambda {|unit, time|
    joins(:alerts => {:alert_code => :alert_unit_codes})
    .where("reports.unit_id = ? AND
            reports.time >= ? AND
            alert_unit_codes.name = ?",
            unit.id, time, "Seat Belt OFF")
    .min(:time)        
  }

  scope :reports_within_driving_period, lambda { |start_time, end_time|
    where("unit_id = ? AND
            reports.time >= ? AND
            reports.time <= ?",
            start_time, end_time)
  }

堆栈跟踪:

代码语言:javascript
复制
ArgumentError: wrong number of arguments(1 for 0)
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/relation/delegation.rb:37:in `min'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/relation/delegation.rb:37:in `method_missing'
    from /Users/johnmerlino/Documents/github/XKTrackingSystem/app/models/report.rb:40:in `block in <class:Report>'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/scoping/named.rb:180:in `call'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/scoping/named.rb:180:in `block (2 levels) in scope'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/scoping/default.rb:41:in `block in unscoped'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/relation.rb:241:in `block in scoping'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/scoping.rb:98:in `with_scope'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/relation.rb:241:in `scoping'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/scoping/default.rb:41:in `unscoped'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/activerecord-3.2.5/lib/active_record/scoping/named.rb:180:in `block in scope'
    from (irb):1
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/railties-3.2.5/lib/rails/commands/console.rb:47:in `start'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/railties-3.2.5/lib/rails/commands/console.rb:8:in `start'
    from /Users/johnmerlino/.rvm/gems/ruby-1.9.3-p0/gems/railties-3.2.5/lib/rails/commands.rb:41:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'1.9.3p0 :002 > exit
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-30 03:24:40

我想你打算用minimum代替min?我还没有找到对min的引用,所以它可能使用了不使用参数的不同方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15709121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档