如何获取Rails应用程序的根目录路径?


当前回答

在Rails 3及更新版本中:

Rails.root

它返回一个Pathname对象。如果你想要一个字符串,你必须添加。to_s。如果你想在你的Rails应用程序中使用另一个路径,你可以像这样使用join:

Rails.root.join('app', 'assets', 'images', 'logo.png')

在Rails 2中,你可以使用RAILS_ROOT常量,它是一个字符串。

其他回答

除了所有其他正确答案,因为Rails。root是一个Pathname对象,这行不通:

Rails.root + '/app/assets/...'

您可以使用join之类的东西

Rails.root.join('app', 'assets')

如果你想要一个字符串,使用这个:

Rails.root.join('app', 'assets').to_s

只需编写Rails.root 并附加任何 Rails.root。Join (*%w(应用程序资产)).to_s

简单地通过Rails。或者如果你想追加一些东西,我们可以使用Rails.root。加入.to_s(“应用”、“资产”)

在Rails 3及更新版本中:

Rails.root

它返回一个Pathname对象。如果你想要一个字符串,你必须添加。to_s。如果你想在你的Rails应用程序中使用另一个路径,你可以像这样使用join:

Rails.root.join('app', 'assets', 'images', 'logo.png')

在Rails 2中,你可以使用RAILS_ROOT常量,它是一个字符串。

你可以使用:

Rails.root

但要加入您可以使用的资产:

Rails.root.join(*%w( app assets))

希望这能帮到你。