我的电脑上安装了两个版本的rails(2.1.0和2.2.2)。

当我创建一个新的应用程序时,是否可以指定我想使用旧版本(2.1.0)?


当前回答

我在使用rails_version_ new application_name时遇到了一些问题(最终的项目仍然是为安装的最新版本的rails生成的)。

经过一番挖掘,我找到了Michael Trojanek的一篇文章,文中给出了另一种方法。这是通过创建一个包含Gemfile的文件夹,指定所需的Rails版本,然后使用bundle exec Rails…以便Bundler负责运行适当版本的rails。例如,创建一个新的Rails 4.2.9项目,步骤如下:

mkdir myapp
cd myapp
echo "source 'https://rubygems.org'" > Gemfile
echo "gem 'rails', '4.2.9'" >> Gemfile
bundle install

bundle exec rails new . --force --skip-bundle
bundle update

其他回答

下面是我通常使用的命令:

rails _version_ new application_name

例如rails _7.0.4_ new my_app . exe

下面是目前所有可用的rails版本的列表:

http://rubygems.org/gems/rails/versions

有两种方法可以做到这一点:

被接受的答案:

gem install rails -v 2.1.0 #only when the gem has not been installed in the desired ruby version you are using, so that you don't get error on next step
rails _2.1.0_ new my_app

另一种方法是在初始化rails项目之前创建所需rails版本的gemfile

mkdir my_app
cd my_app
echo "source 'https://rubygems.org'" > Gemfile
echo "gem 'rails', '2.1.0'" >> Gemfile
bundle install

bundle exec rails new . --force --skip-bundle

我在我的文章中详细地写过这一点

我在使用rails_version_ new application_name时遇到了一些问题(最终的项目仍然是为安装的最新版本的rails生成的)。

经过一番挖掘,我找到了Michael Trojanek的一篇文章,文中给出了另一种方法。这是通过创建一个包含Gemfile的文件夹,指定所需的Rails版本,然后使用bundle exec Rails…以便Bundler负责运行适当版本的rails。例如,创建一个新的Rails 4.2.9项目,步骤如下:

mkdir myapp
cd myapp
echo "source 'https://rubygems.org'" > Gemfile
echo "gem 'rails', '4.2.9'" >> Gemfile
bundle install

bundle exec rails new . --force --skip-bundle
bundle update

请注意您在Rails中使用的ruby版本。

为特定版本的Rail创建新项目的命令可能不适合您。我有一些问题。问题是ruby的默认版本是3.0.0。这个版本不支持Rails 5。然后我安装了ruby 2.7.5,并将其切换为默认版本。直到那时,我才能够为Rails 5和Rails 7开发项目。

如果你想要ruby 2.7.5同样的环境

rvm install ruby-2.7.5

切换到默认版本

rvm --default use 2.7.5

安装捆扎机和打包机

gem install bundler
gem install webpacker

安装最新的rails(即7)

gem install rails

测试它

rails new test_app_6
cd test_app_6
rails s

检查localhost 3000

http://localhost:3000

然后停止服务器(control + c)并安装Rails 5

gem install rails -v 5.2.6

测试它

rails _5.2.6_ new test_app_5
cd test_app_5
rails s

检查localhost 3000

http://localhost:3000

你设置!

我在这里找到了一个未记录的选项,用于使用较旧版本的Rails创建新应用程序。

rails _2.1.0_ new myapp