scope,
irb(main):070:0> User.method(:active_users).parameters
=> [[:rest, :args]]
:rest , . .
, , , ArgumentError - :
ArgumentError: wrong number of arguments (1 for 2)
ArgumentError, arity, arity .
, hack, , , , -.
Model, scope , 100 , , , ArgumentError - .
:
def self.scope_arity scope_symbol
begin
send(scope_symbol, (1..100).to_a)
rescue ArgumentError => e
f = e.message.scan(/for\s+(\d+)/).flatten.first
f.to_i.nonzero? || 0
end
end
:
irb(main):074:0> User.scope_arity(:active_users)
=> 2