** 目次 [#w1270f10]
 #contents
 
 ** 概要 [#k7675b96]
 サーバにインストールされているRailsのバージョンと、自分が使いたいRailsのバージョンが異なる場合でも、任意のバージョンでRailsを動かせます。
 その方法について記述します。
 
 ** 任意のバージョンでRailsを動かす方法 [#s78903bc]
 今回は、サーバに「Rails 1.1.6」が入っているが、自分は「Rails 1.2.5」を利用したい場合の対応について書きます。
 
 #blikimore
 
 *** 現在のRailsのバージョンの確認 [#n869094f]
 - まず、現在のサーバにインストールされているRailsのバージョンを確認します。
  $ rails -v
  Rails 1.1.6
 
 *** 設定ファイルを一旦現在のRailsを使うかのように設定 [#d68695f0]
 - config/environment.rb を編集します
  # Specifies gem version of Rails to use when vendor/rails is not present
  RAILS_GEM_VERSION = '1.1.6' unless defined? RAILS_GEM_VERSION
 -- RAILS_GEM_VERSIONを「1.1.6」とする
 
 *** サーバのバージョンで凍結 [#k78c28ee]
 - 下記コマンドで vendor/rails 配下に現状のRailsの状態をコピーします
  $ rake rails:freeze:edge TAG=rel_1-1-6
 
 - ちなみに、上記の「config/environment.rbの編集」をやらないで実行した場合は、↓このようなエラーがでます。
  $ rake rails:freeze:edge TAG=rel_1-2-5
  (in /var/www/.../my_project)
  Cannot find gem for Rails =1.2.5.0:
      Install the missing gem with 'gem install -v=1.2.5 rails', or
      change environment.rb to define RAILS_GEM_VERSION with your desired version.
 
 *** 使いたいバージョンで再凍結 [#fffa1ca0]
 - 次に、下記コマンドで利用したい任意のRailsのバージョンを指定してコピーします
  $ rake rails:freeze:edge TAG=rel_1-2-5
 
 - ちなみに、上記の「サーバのバージョンで凍結」をやらない場合も、↓のエラーがでます。
  $ rake rails:freeze:edge TAG=rel_1-2-5
  (in /var/www/.../my_project)
  Cannot find gem for Rails =1.2.5.0:
      Install the missing gem with 'gem install -v=1.2.5 rails', or
      change environment.rb to define RAILS_GEM_VERSION with your desired version.
 
 *** 最後に確認 [#r1eb54f3]
 - 自分のアプリが任意のRailsで適応できているかどうかを確認します
  $ ruby script/about
  About your application's environment
  Ruby version                 1.8.4 (i386-linux)
  RubyGems version             0.9.0
  Rails version                1.2.5
  Active Record version        1.15.5
  Action Pack version          1.13.5
  Action Web Service version   1.2.5
  Action Mailer version        1.3.5
  Active Support version       1.4.4
  Edge Rails revision          rel_1-2-5
  Application root             /var/www/.../my_project
  Environment                  development
  Database adapter             mysql
  Database schema version      3
  GetText version              1.10.0
 -- 「Edge Rails revision   rel_1-2-5」なので大丈夫ですね。
 
 - ついでに、サーバのバージョンが代わってないか、、というと
  $ rails -v
  Rails 1.1.6
 代わってませんb
 
 #blikifooter(竹村)
 
 ----
 tag:[[Ruby on Rails>tag/Ruby on Rails]]
 

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

アークウェブのサービスやソリューションはこちら