Mysql &引用;未定义的方法'accept';对于nil:NilClass“;

Mysql &引用;未定义的方法'accept';对于nil:NilClass“;,mysql,windows,ruby-on-rails-3,Mysql,Windows,Ruby On Rails 3,我在运行db:migrate时遇到“未定义的方法'accept'for nil:NilClass”错误。我的配置是: Rails 3.2.8 MySql 5.1.54 OS : win7 ruby : 1.9.2 “我的宝石列表”命令输出: F:\RailsApp\MyApp>gem list *** LOCAL GEMS *** actionmailer (3.2.8) actionpack (3.2.8) activemodel (3.2.8, 3.1.0) activereco

我在运行db:migrate时遇到“未定义的方法'accept'for nil:NilClass”错误。我的配置是:

Rails 3.2.8
MySql 5.1.54
OS : win7
ruby : 1.9.2
“我的宝石列表”命令输出:

F:\RailsApp\MyApp>gem list

*** LOCAL GEMS ***

actionmailer (3.2.8)
actionpack (3.2.8)
activemodel (3.2.8, 3.1.0)
activerecord (3.2.8)
activeresource (3.2.8)
activesupport (3.2.8, 3.1.0)
arel (3.0.2)
bcrypt-ruby (3.0.1 x86-mingw32)
builder (3.0.0)
bundler (1.1.5)
coffee-rails (3.2.2)
coffee-script (2.2.0)
coffee-script-source (1.3.3)
erubis (2.7.0)
execjs (1.4.0)
hike (1.2.1)
i18n (0.6.0)
journey (1.0.4)
jquery-rails (2.0.2)
json (1.7.4)
mail (2.4.4)
mime-types (1.19)
minitest (1.6.0)
multi_json (1.3.6)
mysql (2.8.1 x86-mingw32)
mysql2 (0.3.11 x86-mingw32, 0.2.6 x86-mingw32)
polyglot (0.3.3)
rack (1.4.1, 1.3.6)
rack-cache (1.2)
rack-ssl (1.3.2)
rack-test (0.6.1)
rails (3.2.8)
railties (3.2.8)
rake (0.9.2.2, 0.8.7)
rdoc (3.12, 2.5.8)
sass (3.2.0)
sass-rails (3.2.5)
sprockets (2.1.3)
thor (0.15.4)
tilt (1.3.3)
treetop (1.4.10)
tzinfo (0.3.33)
uglifier (1.2.7)
我还将%MYSQLPATH%/bin/libmySQL.dll文件复制到%RUBYHOME%/bin文件夹


有人能帮我解决这个问题吗?

这可能是AR-JDBC的问题。试着跑步

bundle update activerecord-jdbc-adapter
这可能对你有帮助

如果它对你不起作用,试着用它

bundle update mysql2

有关更多信息,请查看这可能是AR-JDBC问题。试着跑步

bundle update activerecord-jdbc-adapter
这可能对你有帮助

如果它对你不起作用,试着用它

bundle update mysql2

有关更多信息,请查看

最后,我已经解决了有关此帖子的问题

我所做的工作如下:

  • 从中下载并解压缩包

  • 使用以下命令删除所有mysql/mysql2 gem并重新安装mysql gem:
    gem安装mysql--platform=ruby--with mysql dir=E:/mysql-connector-c-noinstall-6.0.2-win32

  • 在GemFile中添加
    gem'mysql'

  • 使用适配器mysql修改database.yml

  • 将MYSQLHOME/bin/libmsql.dll复制到RUBYHOME/bin

  • 如果发现dsl错误,则在RakeFile顶部添加
    要求“rake/dsl_定义”

  • 它是有效的…-)

    我的最终文件是:

    source 'https://rubygems.org'
    gem 'rails', '3.2.3'
    gem 'mysql'
    group :assets do
      gem 'sass-rails',   '~> 3.2.3'
      gem 'coffee-rails', '~> 3.2.1'
      gem 'uglifier', '>= 1.0.3'
    end
    
    gem 'jquery-rails'
    

    最后,我已经解决了关于这篇文章的问题

    我所做的工作如下:

  • 从中下载并解压缩包

  • 使用以下命令删除所有mysql/mysql2 gem并重新安装mysql gem:
    gem安装mysql--platform=ruby--with mysql dir=E:/mysql-connector-c-noinstall-6.0.2-win32

  • 在GemFile中添加
    gem'mysql'

  • 使用适配器mysql修改database.yml

  • 将MYSQLHOME/bin/libmsql.dll复制到RUBYHOME/bin

  • 如果发现dsl错误,则在RakeFile顶部添加
    要求“rake/dsl_定义”

  • 它是有效的…-)

    我的最终文件是:

    source 'https://rubygems.org'
    gem 'rails', '3.2.3'
    gem 'mysql'
    group :assets do
      gem 'sass-rails',   '~> 3.2.3'
      gem 'coffee-rails', '~> 3.2.1'
      gem 'uglifier', '>= 1.0.3'
    end
    
    gem 'jquery-rails'
    

    通过更正database.yml文件,我修复了相同的问题。它的使用者是mysql2,现在我将其更正为mysql,通过更正database.yml文件修复了相同的问题。它的使用者是mysql2,现在我把它改成了mysql