Je suis accro à la dernière version de Rails que j'ai installée lorsque j'ai lancé rails new
, donc je la posterai.
Si vous rails new
sans spécifier de version, l'application sera créée avec la dernière version de Rails que vous avez installée.
Cependant, ce que j'ai rencontré était le phénomène selon lequel lorsque rails new
était fait, l'application était créée avec une version plus ancienne au lieu de la dernière version. De plus, cette version n'était pas affichée même avec la commande gem list
. ..
Si j'écris la cause en premier, il y a eu un problème avec la configuration des variables d'environnement.
/ usr / local / bin
est défini avant / Users / user_name / .rbenv / shims
, et $ PATH
a la priorité sur l'écriture, donc / usr / local / bin C'était parce que / rails
était utilisé.
En d'autres termes, il faisait référence à Rails installé sur mac, pas à la version de Rails gérée par rbenv.
$ echo $PATH
/usr/local/bin:(Omission)/Users/user_name/.rbenv/shims:/Users/user_name/.rbenv/bin:
(Ce qui suit est omis)
Lorsque j'ai essayé de créer une nouvelle application et exécuté la commande rails new
sans spécifier de version, elle a été créée avec une version plus ancienne (5.2.3) au lieu de la dernière version installée (6.0.3).
Gemfile
source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
ruby '2.3.7'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.2.3'
(Omis ci-dessous)
Quand j'ai vérifié la version de Rails, c'était 5.2.3, mais la version vérifiée avec la commande gem list
n'incluait pas 5.2.3.
$ rails -v
Rails 5.2.3
Quand j'ai vérifié l'emplacement d'exécution de Rails avec which rails
, c'était / usr / local / bin / rails
. La raison en est que, comme mentionné ci-dessus, la variable d'environnement définie / usr / local / bin / rails
avant le chemin de rbenv.
$ which rails
/usr/local/bin/rails
Quand j'ai ouvert le couvercle, c'était un problème simple, mais une fois que j'ai désinstallé toutes les gemmes, c'était inutile, alors j'espère que cela aidera ceux qui ont des problèmes avec le même problème.
Les Railties semblent aussi être suspects quand rails -v
montre une version de Rails qui ne devrait pas exister.
Vérifiez les rails quand quelque chose ne va pas avec la version Rails - un blog assez génial