говорит, что если я разрабатываю приложение Ruby on Rails с использованием Rails 2.3.2, будет ли это обычно совместимо с Passenger в моей хостинговой компании? - PullRequest
0 голосов
/ 24 мая 2009

говорит, что если я разрабатываю приложение Ruby on Rails с использованием Rails 2.3.2, будет ли оно обычно совместимо с Passenger в моей хостинговой компании?

Если я захожу в мою хостинговую компанию и набираю rails -v, я получаю 2.2.2 ... так что похоже, что они используют Rails 2.2.2.

Так что, если я разработаю приложение Rails на своем Macbook и перенесу туда все файлы ftp, будет ли Пассажир там нормально работать с сгенерированным кодом с текущей версией Rails?

Ответы [ 3 ]

2 голосов
/ 24 мая 2009

Заморозьте рельсы вендора / рельсов, используя встроенное задание рейка. Таким образом, ваше приложение будет использовать нужную вам версию rails, независимо от того, где вы ее развернули.

rake rails:freeze:gems

И самый простой способ сделать конкретную версию, о которой я знаю.

rake rails:freeze:edge RELEASE=2.3.2.1

Теперь ваша версия рельсов будет идти с вами, куда вы отправляете свое приложение.

Вы можете распаковать другие зависимости от самоцветов в вендор / самоцветы для любого используемого вами самоцвета и хотите быть уверенным, что он доступен везде, где вы развертываете приложение.

rake gems:unpack

И для обеспечения их зависимости перейдите по адресу:

rake gems:unpack:dependencies

Я бы также посоветовал вам убедиться, что на них установлена ​​последняя версия пассажирской версии.

1 голос
/ 24 мая 2009

Я бы проверил версию установленного Пассажира (или подтвердил, что он установлен). Я бы также предложил вам заморозить вашу версию Rails.

0 голосов
/ 28 мая 2009

Просто секунду что-нибудь для ответа railsninja.

Сначала скажите, это не сработает сразу.

Это хост vps для вас или у вас есть доступ sudo?

Если да, я предлагаю вам сделать рейк-гемы: установить вместо гемов: распаковать, потому что некоторые из гемов зависят от ОС, например (Rcov, RedCloth ... и т.д.)

Я спрошу хостинговую компанию о конфигурации их пассажиров, важный вопрос будет, если они используют RailsSpawnMethod: smart или smart-lv2 (по умолчанию). Если они используют умный метод, то лучше заморозить ваши драгоценные камни иначе у rails будет проблема совместимости, как вы можете найти в руководстве пользователя для пассажира о RailsSpawnMethod.

Это будет почти на 100% совместимо, если вы заморозите свои драгоценные камни (все драгоценные камни должны быть правильно объявлены в environment.rb с config.gem, например (config.gem 'will_paginate',: source => "http://gems.github.com")) и рельсы !!!!!

...