2010-11-12 39 views
4

Ruby on Rails: 我想在本地主机上调用一个控制器,但服务器说!!!缺少MySQL宝石。将它添加到您的Gemfile中:gem'mysql','2.8.1'ubuntu上的rails mysql gem问题

问题?当我点击'gem list'命令时,我得到了一个包含mysql 2.8.1的列表。所以宝石已经安装!为什么webrick看不到?

谢谢。

回答

0

看来您正在使用Rails 3,它使用bundler来加载所有需要的gem。您应该按照错误消息的指示将gem添加到您的Gemfile中,以便将其加载。 查看bundler项目页面以获取关于gem依赖关系工具以及如何在Rails中使用它的更多信息。 http://gembundler.com/rails3.html

12

您需要将行gem 'mysql', '2.8.1'添加到您的Gemfile中。然后在Rails项目的根文件夹中键入bundle install。听起来你忘了运行捆绑软件。

MySQL gem确实需要本地C扩展。所以你需要确保你已经安装了所有的开发库。

在Ubuntu中,你可以做这样的事情:

sudo apt-get install mysql-server mysql-client 
sudo apt-get install libmysql-ruby libmysqlclient-dev 
sudo gem install mysql 

如果您正在使用RVM,不安装宝石作为sudo的。

只是为了确保,您可能还想尝试删除您的Gemfile.lock,然后重新运行bundle install