Как переключиться на более старые версии среды ruby ​​/ rails? - PullRequest
10 голосов
/ 14 ноября 2010

Я пытаюсь не отставать от Tekpub. Создайте свой собственный блог на скриншоте рельсов. Я все еще начинающий рубин, и проблема в том, что у меня установлен Rails 3, а Роб использует более старую версию (в верхней части моей головы: версия 2.3.2).

Я знаю, как получить эту версию rails с gem install rails --version=2.3.2, но когда я набираю rails new, версия приложения будет rails 3. Как мне заставить это конкретное приложение работать со старой версией? Я знаю, что это как-то связано с rvm, но я понятия не имею, как сделать что-то, кроме основной операции rvm use.

Ответы [ 3 ]

22 голосов
/ 14 ноября 2010

Попробуйте,

rvm use <ruby version>
rvm gemset create rails2.3.2
rvm <ruby version>@rails2.3.2
gem install rails --version=2.3.2

Наконец, синтаксис для создания нового приложения rails в старых версиях rails был просто:

rails <appanme>

Для получения дополнительной информации о наборе драгоценных камней: RVM: Именованные наборы драгоценных камней

3 голосов
/ 14 ноября 2010

Это установит Ruby 1.8.7, а затем создаст набор камней, который будет содержать только определенный набор камней:

rvm install 1.8.7
rvm --create use 1.8.7@old_rails
gem install rails --version=2.3.2

Всякий раз, когда вы захотите использовать его после первого раза, просто:

*Файлы 1005 *

.rvmrc действительно полезны для автоматического управления различными наборами версий и гемов Ruby.Если вы создадите файл с именем .rvmrc в каталоге проекта и добавите в него следующую строку:

rvm --create use 1.8.7@old_rails

Тогда каждый раз, когда вы cd в этот каталог, RVM переключается на Ruby 1.8.7 и gemsetold_rails».Посмотрите документы для .rvmrc здесь: http://rvm.beginrescueend.com/workflow/rvmrc/

Конечно, вы можете изменить «1.8.7» на «1.8.6», «1.8.7-p249», «ree-1.8»..7-2010.02 "или любую другую версию Ruby, которая вам нравится, я просто предположил, что вы захотите 1.8.7.

1 голос
/ 14 ноября 2010

Взгляните на RVM (Ruby Version Manager)

...