2008-12-18 80 views
185

我的電腦中安裝了兩個版本的rails(2.1.0和2.2.2)。指定創建新應用程序時使用的rails版本

當我創建一個新的應用程序時,是否可以指定我想使用舊版本(2.1.0)?

+0

http://www.railshorde.com/blog/rails-command-to-create-new-application-with-specific-version-and - 數據庫 – Animesh 2015-06-16 19:11:23

回答

414

我發現here無證選項來創建使用Rails的舊版本的新的應用程序。

rails _2.1.0_ new myapp 
+3

仍然適用於Rails3.0,太棒了! – xhan 2010-11-22 08:24:49

+1

您應該將其更改爲接受的答案,因爲它適用於Rails 2和3.如果您安裝了Rails 3並希望使用Rails 2應用程序,那麼Keltia的答案將不再起作用。 – 2011-02-06 15:03:44

3

您可以生成與任一版本的骨架,並要求你在config/environment.rb想要的:

# Specifies gem version of Rails to use when vendor/rails is not present 
RAILS_GEM_VERSION = '2.1.2' unless defined? RAILS_GEM_VERSION 

或使用「軌道」命令形成仍要版本。

3

您還應該看看將您的Rails寶石「凍結」到應用程序中。這對部署有很大幫助,特別是在共享主機環境中。

只要改變RAILS_GEM_VERSION變量config/environment.rb併發出凍結耙子任務:

rake rails:freeze:gems 
+0

使用rvm使用rubyversion – Apoorv 2016-04-26 17:58:38

16

我在使用時遇到了一些麻煩(所得項目還在用於安裝導軌的最新版本生成的。)

有點挖我發現an article通過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 
相關問題