ArgumentError: неверное количество аргументов (3 для 2) после обновления до Rails 3.1 с использованием activerecord-sqlserver-adapter - PullRequest
5 голосов
/ 27 мая 2011

После обновления до Rails 3.1 любой вызов ActiveRecord имеет следующий результат:

ArgumentError: wrong number of arguments (3 for 2)
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/activerecord-sqlserver-adapter-3.0.3/lib/active_record/connection_adapters/sqlserver/database_statements.rb:185:in `select'
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/activerecord-3.1.0.rc1/lib/active_record/connection_adapters/abstract/database_statements.rb:9:in `select_all'
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/activerecord-3.1.0.rc1/lib/active_record/connection_adapters/abstract/query_cache.rb:62:in `select_all'
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/activerecord-3.1.0.rc1/lib/active_record/base.rb:469:in `find_by_sql'
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/activerecord-3.1.0.rc1/lib/active_record/relation.rb:106:in `to_a'
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/activerecord-3.1.0.rc1/lib/active_record/relation/finder_methods.rb:155:in `all'
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/activerecord-3.1.0.rc1/lib/active_record/base.rb:440:in `all'
from (irb):1
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.1.0.rc1/lib/rails/commands/console.rb:44:in `start'
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.1.0.rc1/lib/rails/commands/console.rb:8:in `start'
from /Users/username/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.1.0.rc1/lib/rails/commands.rb:40:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'

Кто-нибудь еще сталкивался с этой проблемой?

Ответы [ 2 ]

11 голосов
/ 03 июня 2011

проверьте ваш гемфайл, вам нужен новейший самоцвет mysql2 для рельсов 3:

замена

gem 'mysql2',  '0.2.7'

с

gem 'mysql2',  '>=0.3'

и запустите "установку пакета", и вы должны быть готовы пойти

5 голосов
/ 16 июня 2011

Вам также необходимо выполнить обновление до основной ветви адаптера сервера SQL. Это будет возможная версия 3.1. 3.0 версии адаптера предназначены для 3.0 рельсов. Итак, ваш адаптер устарел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...