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
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.
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.
Non, les applications Rails 3 utilisent un Gemfile pour stocker la version Rails. Le 'environment.rb' ne contient plus de version. – molf
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
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
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
c'est correct. Mieux vaut lire la documentation bundler http://gembundler.com/ –