Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在某些情况下,Rails.root.join将丢失Rails.root路径_Ruby On Rails_Ruby_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 在某些情况下,Rails.root.join将丢失Rails.root路径

Ruby on rails 在某些情况下,Rails.root.join将丢失Rails.root路径,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,我想要的绝对路径是/Users/Hsu Wei Cheng/Dropbox/Rails/zeus/public/uploads/local\u display\u multi\u lang/xml/8/results.zip /uploads/local\u display\u multi\u lang/xml/8/results.zip存储在local\u display\u multi\u lang.result 因此,我尝试使用Rails.root.join方法来获取系统中的绝对路径 通过

我想要的绝对路径是
/Users/Hsu Wei Cheng/Dropbox/Rails/zeus/public/uploads/local\u display\u multi\u lang/xml/8/results.zip

/uploads/local\u display\u multi\u lang/xml/8/results.zip
存储在
local\u display\u multi\u lang.result

因此,我尝试使用
Rails.root.join
方法来获取系统中的绝对路径

通过
Rails.root.join(“public”),本地\u显示\u multi\u lang.result.to\s)

但它不起作用,我得到了
:/uploads/local\u display\u multi\u lang/xml/8/results.zip

我犯了什么错误?谢谢

[3] pry(#<#<Class:0x007fe7ae84f038>>)> Rails.root.join("public", local_display_multi_lang.result.to_s)
=> #<Pathname:/uploads/local_display_multi_lang/xml/8/results.zip>
[4] pry(#<#<Class:0x007fe7ae84f038>>)> Rails.root
=> #<Pathname:/Users/Hsu-Wei-Cheng/Dropbox/Rails/zeus>
[5] pry(#<#<Class:0x007fe7ae84f038>>)> local_display_multi_lang.result.to_s
=> "/uploads/local_display_multi_lang/xml/8/results.zip"
[6] pry(#<#<Class:0x007fe7ae84f038>>)> Rails.root.join("public")
=> #<Pathname:/Users/Hsu-Wei-Cheng/Dropbox/Rails/zeus/public>
[7] pry(#<#<Class:0x007fe7ae84f038>>)> local_display_multi_lang.result.to_s
=> "/uploads/local_display_multi_lang/xml/8/results.zip"
[8] pry(#<#<Class:0x007fe7ae84f038>>)> Rails.root.join("public", local_display_multi_lang.result.to_s)
=> #<Pathname:/uploads/local_display_multi_lang/xml/8/results.zip>
[9] pry(#<#<Class:0x007fe7ae84f038>>)> Rails.root.join("public", local_display_multi_lang.result)
=> #<Pathname:/uploads/local_display_multi_lang/xml/8/results.zip>
[3]pry(#)>Rails.root.join(“public”,local_display_multi_lang.result.to_s)
=> #
[4] 撬(#)>Rails.root
=> #
[5] pry(#)>本地显示多个lang.result.to
=>“/uploads/local\u display\u multi\u lang/xml/8/results.zip”
[6] pry(#)>Rails.root.join(“public”)
=> #
[7] pry(#)>本地显示多个lang.result.to
=>“/uploads/local\u display\u multi\u lang/xml/8/results.zip”
[8] pry(#)>Rails.root.join(“public”,local_display_multi_lang.result.to_s)
=> #
[9] pry(#)>Rails.root.join(“public”,local_display_multi_lang.result)
=> #

因为
local\u display\u multi\u lang.result.to\u s
是一条绝对路径

试一试


谢谢,但现在我有一些在绝对路径中,一些在相对路径中。是否有任何内置功能可以修复?
Rails.root.join("public", local_display_multi_lang.result.to_s[1..-1])