4

Ruby on Rails:我想调用本地主机上的控制器,但服务器说!!!缺少 mysql gem。将其添加到您的 Gemfile:gem 'mysql', '2.8.1'

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

谢谢你。

4

2 回答 2

13

您需要将该行添加gem 'mysql', '2.8.1'到您的 Gemfile。然后输入bundle installRails 项目的根文件夹。听起来您忘记运行捆绑程序。

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,请不要将 gems 安装为 sudo。

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

于 2010-11-12T12:02:50.057 回答
0

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

于 2010-11-12T11:58:05.097 回答