我对在轨道上使用ruby的“简单”感到困惑,因为我已经花了三天时间尝试创建一个应用程序。
我在site5托管上工作,并尝试创建新的应用程序。一步一步:
$ rails new app -d mysql
$ gem install mysql
$ gem install mysql2
之后
$ rake db:create
报告错误
Could not find gem 'mysql2 (~> 0.2.6, runtime)' in any of the gem sources listed in your Gemfile.
我谷歌,但仍然无法解决问题。有人可以帮忙吗?
答案 0 :(得分:5)
运行rails new app -d mysql
会自动将所需的gem添加到Gemfile中,因此您不需要使用gem
命令手动安装它们。请尝试以下方法:
$ rails new app -d mysql
$ cd app
$ bundle install
$ rake db:create
我怀疑你所关注的教程适用于较旧版本的Rails。使用rails 3,您应该使用bundler进行所有gem管理。
答案 1 :(得分:1)
你就是这样做的。
gem list --local
显示已安装宝石的列表。你看到mysql2 gem吗?如果没有安装mysql2,请运行
gem install mysql2
您现在可以启动新的rails应用了。转到所需目录并运行
rails new my_app -d mysql
这将在目录my_app中使用mysql绑定创建一个新的rails应用程序。导航到app目录并运行
rake about
如果一切都很好,你应该看到以下
Database adapter mysql2
触发您喜欢的文本编辑器并转到config / database.yml 请注意,有三个数据库,分别用于开发,测试和生产。用户将是" root"但没有密码。在所有三个地方输入root密码。您也可以更改用户。
接下来打开mysql并创建三个数据库
mysql -u root -p
create database my_app_production;
create database my_app_test;
create database my_app_development;
exit
下一个终端类型
rails generate scaffold TableName name:string due:date etc...
rake db:migrate
......你已经完成了。 希望这会有所帮助。
答案 2 :(得分:0)
您是否尝试过gem install mysql2
?
如果不起作用,请尝试关注this tutorial
看起来您的问题是由丢失的mysql gem生成的。
Here是关于其安装的另一个问题。看看那里的任何解决方案是否也适用于你
答案 3 :(得分:0)
我遇到了类似的问题。 (我正在使用rvm)。我想我运行了一些代码:
libmysqlclient
之后的数字可能会有所不同。而且你的路径可能也不同,但概念应该是相似的。
sudo install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib 〜/ .rvm /宝石/红宝石1.9.2-P136 \ @ rails3tutorial /宝石/ mysql2-0.2.7 / LIB / mysql2 / mysql2.bundle