【问题标题】:create new application ruby on rails在 Rails 上创建新的应用程序 ruby
【发布时间】:2011-06-23 07:04:45
【问题描述】:

我对在 Rails 上“轻松”使用 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.

我用谷歌搜索,但仍然无法解决问题。有人可以帮忙吗?

【问题讨论】:

  • 当你运行'gem list'时,你能在列表中找到mysql gem吗?
  • stocktra@stock.travel [~/public_html/ab.awithy.ru/app]# gem list mysql *** REMOTE GEMS *** mysql (2.8.1, 2.7.3) mysql-检查器 (0.0.6) mysql-xml (0.1.1) mysql2 (0.3.6, 0.2.6) mysql2_bigint (0.2.6.1) mysql2_model (0.1.2) mysql2mysql (0.0.2) mysql2psql (0.1.0) mysql2xxxx ( 0.1.1) mysql_backup (0.2.1)
  • 是什么意思,我有什么mysql gem?

标签: mysql ruby-on-rails gem new-operator


【解决方案1】:

运行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 管理。

【讨论】:

  • 是的,谢谢!问题出在我的主机上,我应该输入 $bundle install vendor/bundle
【解决方案2】:

这就是你的做法。

gem list --local

显示已安装 gem 的列表。你看到 mysql2 gem 吗?如果没有安装 mysql2 运行

gem install mysql2

您现在已准备好启动新的 rails 应用程序。转到所需目录并运行

rails new my_app -d mysql

这将在 my_app 目录中创建一个带有 mysql 绑定的新 Rails 应用程序。导航到应用目录并运行

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

...你就完成了。 希望这会有所帮助。

【讨论】:

    【解决方案3】:

    你试过运行gem install mysql2吗?

    如果这不起作用,请尝试关注this tutorial

    看起来您的问题是由缺少的 mysql gem 产生的。

    Here 是关于其安装的另一个问题。看看那里的任何解决方案是否也适用于您

    【讨论】:

    • 看上面,我已经试过 $gem install mysql。另外,我认为本教程是为 windows 创建的,但我需要在远程 linux 服务器上制作应用程序
    • 我编辑了我的答案给你另一个灵感来源:)
    【解决方案4】:

    我遇到了类似的问题。 (我正在使用 rvm)。我想我运行了一些代码,例如:

    libmysqlclient 后面的数字可能不同。路径对你来说也可能不同,但概念应该相似。

    sudo install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib ~/.rvm/gems/ruby-1.9.2-p136\@rails3tutorial/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-01
      • 1970-01-01
      • 2015-08-22
      • 2013-01-26
      • 2010-10-16
      • 1970-01-01
      • 1970-01-01
      • 2012-09-30
      相关资源
      最近更新 更多