Frage

Wie bekomme ich das Verzeichnis, in dem sich die Rakefile.rb befindet?

Ich möchte dies als mein Root -Verzeichnis verwenden, um alles zu finden.

War es hilfreich?

Lösung

verwenden __FILE__ Um den Dateinamen zu erhalten, können Sie das Verzeichnis von dort erhalten:

in test.rb

puts __FILE__

Ausgang:

/users/foo/test.rb

__FILE__ Löst den vollständigen Pfad der Datei, in der sie sich befindet.

Verwenden Sie dies, um den Dire -Namen zu erhalten:

File.dirname(__FILE__)

Andere Tipps

Sie können es bekommen, indem Sie anrufen application.original_dir Methode. In der Aufgabe können Sie erreichen Anwendung Objekt verwendet Anwendung Methode zum Aufgabenobjekt.

Warum nicht einfach Dir.pwd verwenden

?

Wenn dies eine ROR -App ist, sollte Ihr Rakefile.rb in Ihrem Rails_Root -Verzeichnis enthalten sein. In jedem Skript können Sie also den Dateispeicherort angeben

 config.load_paths += %W( #{RAILS_ROOT}/extras )

Ab Ruby 2 können Sie verwenden __dir__ Anstatt von File.dirname(__FILE__) Um das Verzeichnis zu erhalten, das das aktuelle Skript enthält.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top