【问题标题】:need to install rails per new version or app?需要为每个新版本或应用程序安装 rails 吗?
【发布时间】:2020-05-13 13:45:12
【问题描述】:

我在新安装的 Manjaro linux 上安装了 ruby​​、rails、postgresql。

[thiebo@Ruth ~]$ rails -v
Rails 6.0.3
[thiebo@Ruth ~]$ ruby -v
ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]

我可以使用rails new mynewapp 创建一个新应用,并且效果很好。

然后我下载了我的应用程序,该应用程序已经在 heroku 上运行。当我将目录更改为从 heroku 下载的应用程序并命令 rails server 时,我得到 bash: rails: command not found

heroku 的应用程序使用的是 rails 5.2.3,所以我预计会有相当多的错误消息以及从 rails 5.2.3 到 rails 6.2 的必要升级。但是我无法解释,也不知道如何解决找不到命令。

【问题讨论】:

  • 您是否在使用任何 ruby​​ 版本管理器,例如 rvm 或 rbenv?
  • Gems 通常按 ruby​​ 版本安装。过去我们曾经在 RVM 中使用 gemset 来隔离 gem 环境,但 Bundler 已经消除了这种需求。

标签: ruby-on-rails ruby heroku


【解决方案1】:

您需要在您的机器上为每个版本的 Ruby 安装 Rails并且您需要安装在特定 Ruby 版本下运行的应用程序所需的每个版本的 Rails。

因此你需要运行

bundle install

在下载您的应用程序以安装当前 Ruby 版本所需的所有依赖项之后。

【讨论】:

  • 谢谢!但是如果我想从 Rails 5.2 升级到 Rails 6.2,我应该在运行 bundle install 之前在 Gemfile 中更改它吗?
  • 是的,在 Gemfile 和 .ruby-version 文件中,具体取决于您的设置。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-27
相关资源
最近更新 更多