ruby-on-rails - Rails 3 - Rails-dbd-mysql gem 依赖于 mysql 而不是 mysql2

标签 ruby-on-rails

我正在尝试捆绑rails-dbd-mysql,但它尝试安装旧的mysql gem而不是新的mysql2 gem。我需要做什么才能使其与 mysql2 一起工作?

最佳答案

如果您有兴趣深入研究源代码,可以通过修改 lib/dbd/Mysql.rb 来完成此操作。文件。具体来说:

begin
    require 'rubygems'
    gem 'mysql'
    gem 'dbi'
rescue LoadError => e
end

require 'dbi'
require "mysql"
require "thread"   # for Mutex

mysql 更改为 mysql2 并重新安装 gem。整个程序中可能有更多分散的内容,因此请执行“查找全部”以确保确定。

编辑: 您可以尝试在 build/rake_task_lib.rb文件。特别是这段代码:

DBD_GEM_DEP_MAP = {
    'pg'      => 'pg',
    'mysql'   => 'mysql', #change this to mysql2, or add mysql2 to the list
    'sqlite'  => 'sqlite-ruby',
    'sqlite3' => 'sqlite3-ruby'
}

关于ruby-on-rails - Rails 3 - Rails-dbd-mysql gem 依赖于 mysql 而不是 mysql2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10305478/

相关文章:

ruby-on-rails - simple_form仅在存在文件时才允许上传

ruby-on-rails - 使用 hstore 使用 postgres 的 Rails 测试数据库出错

javascript - 如何将 f.date_select 的月份、日期、年份放在单行上?

ruby-on-rails - 如果 URL 中没有文件名,我可以确定它是否指向图像吗?

ruby-on-rails - 为什么我在使用 `acts_as_taggable_on` 时会收到这个简单的错误?

ruby-on-rails - rspec 和第一次测试试验

ruby-on-rails - rails 上的 ruby : Data base sqlite3 to PostgreSQL [RALS]

ruby-on-rails - 如何在 Ruby 中获取 http 请求的内容?

ruby-on-rails - 使用 rake 任务重置数据库

ruby-on-rails - 无法加载 CSS