2009-01-25 5 views
5

Was ist der Zweck der RAILS_GEM_VERSION Einstellung in config/environment.rb? Soll die App unter einer unerwarteten Rails-Version ausgeführt werden?Was macht die Einstellung "RAILS_GEM_VERSION" genau?

Ich halte einfach Rails auf dem neuesten Stand auf meinem Laptop und in der Produktion. Da ich das mache, kann ich RAILS_GEM_VERSION auskommentieren oder sollte ich es aus irgendeinem Grund einstellen?

+0

Was ist mit Rails 3 in Verbindung mit Bundler: Wir kennen die zu ladende Version bereits, weil die Gemfile das entscheidet - bedeutet das, dass "RAILS_GEM_VERSION" veraltet ist? – conny

+0

Es sollte so sein. –

Antwort

5

Da auf Ihrem System mehr als eine Version von Rails installiert sein kann (Sie können überprüfen, ob Sie mit gem list rails arbeiten), muss Ihre Anwendung wissen, welche Version sie verwenden soll. Es wird nicht sehr schlau sein, "Rails auf dem neuesten Stand zu halten" und die Anwendung die neueste Version verwenden zu lassen, da eine neue Version von Rails es sehr leicht brechen könnte (jede neue Version bedeutet einige Änderungen an der API). Diese Konstante ist jedoch irrelevant, wenn Sie die Version von Rails, für die Ihre App erstellt wird, im Herstellerordner "einfrieren". Übrigens. Das Einfrieren von Rails ist eine gute Übung, da deine App dann unabhängiger von der Umgebung ist.

+0

Sie könnten auch (jetzt, da Bundler so häufig ist) vor dem Befehl, den Sie ausführen müssen, 'bundle exec' ausführen. – thekingoftruth