Ich bin süchtig nach der neuesten Version von Rails, die ich installiert habe, als ich "Rails New" ausgeführt habe, also werde ich sie veröffentlichen.
Wenn Sie "Rails neu" sind, ohne eine Version anzugeben, wird die App mit der neuesten Version von Rails erstellt, die Sie installiert haben. Was mir jedoch begegnete, war das Phänomen, dass die App nach der Erstellung von "Rails New" mit einer älteren Version anstelle der neuesten Version erstellt wurde. Darüber hinaus wurde diese Version auch mit dem Befehl "gem list" nicht angezeigt. ..
Wenn ich zuerst die Ursache schreibe, gab es ein Problem mit der Einstellung von Umgebungsvariablen.
/ usr / local / bin
wird vor / Users / user_name / .rbenv / shims
definiert, und $ PATH
hat Vorrang vor dem Schreiben, also / usr / local / bin Es war, weil / Rails
verwendet wurde.
Mit anderen Worten, es bezog sich auf Rails, die auf einem Mac installiert waren, nicht auf die von rbenv verwaltete Version von Rails.
$ echo $PATH
/usr/local/bin:(Unterlassung)/Users/user_name/.rbenv/shims:/Users/user_name/.rbenv/bin:
(Folgendes wird weggelassen)
Als ich versuchte, eine neue App zu erstellen und den Befehl "Rails New" ohne Angabe einer Version ausführte, wurde sie mit einer älteren Version (5.2.3) anstelle der zuletzt installierten Version (6.0.3) erstellt.
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'
(Unten weggelassen)
Als ich die Version von Rails überprüfte, war es 5.2.3, aber die mit dem Befehl gem list
überprüfte Version enthielt nicht 5.2.3.
$ rails -v
Rails 5.2.3
Als ich den Rails-Ausführungsort mit "Welche Rails" überprüfte, war es "/ usr / local / bin / Rails". Der Grund dafür ist, dass, wie oben erwähnt, die Umgebungsvariable "/ usr / local / bin / Rails" vor dem Pfad von rbenv definiert.
$ which rails
/usr/local/bin/rails
Als ich den Deckel öffnete, war es ein einfaches Problem, aber nachdem ich alle Edelsteine deinstalliert hatte, war es nutzlos. Ich hoffe, es hilft denen, die Probleme mit demselben Problem haben.
Railties scheinen auch verdächtig zu sein, wenn Rails -v
eine Version von Rails anzeigt, die nicht existieren sollte.
Überprüfen Sie die Railties, wenn etwas mit der Rails-Version nicht stimmt - ein ziemlich großartiger Blog
Recommended Posts