2010-10-23 13 views
4

J'ai téléchargé une archive contenant du code pour une application Rails (à partir d'un livre que je suis en train de lire). Je cours Rails 3.0.1 mais l'application ne parvient pas à démarrer, car elle recherche 3.0.0beta3. Y at-il un moyen de le démarrer avec ma version de Rails?Puis-je modifier la version Rails attendue d'une application Rails?

Répondre

6

Oui, recherchez le fichier Gem dans la racine de l'application et recherchez la ligne

bijou 'rails', '3.0.0beta3' et changer pour petit bijou 'rails', '3.0.1'

puis exécutez l'installation du bundle à partir d'un terminal dans la racine de l'application.

+0

Quelle est la différence entre "gem install XXX" et "bundle install"? Puis-je le comprendre de la façon dont "bundle install" installe toutes les gemmes nécessaires dans l'application en même temps alors que "gem install XXX" n'installe que la gemme "XXX" spécifiée? – Leem

+0

c'est correct. Mieux vaut lire la documentation bundler http://gembundler.com/ –

0

Il y a probablement une ligne dans le fichier environment.rb qui ressemble à

RAILS_GEM_VERSION = '3.0.0beta3' unless defined? RAILS_GEM_VERSION 

Mise à jour cela devrait régler votre problème.

+1

Non, les applications Rails 3 utilisent un Gemfile pour stocker la version Rails. Le 'environment.rb' ne contient plus de version. – molf

+0

Ah, d'accord ... J'ai fait un peu de recherche et j'ai vu RAILS_GEM_VERSION mentionné en rapport avec la version 3, et je suppose qu'il doit toujours utiliser le même schéma. Mon erreur. – SamStephens

1

c'est parce que votre Gemfile.lock montre probablement Rails 3.0.0.beta3. Même si vous changez votre Gemfile à 3.0.1 et l'installez en utilisant gem install rails, vous devrez exécuter bundle install ou bundle update rails