のパスディレクトリがcsv
と呼ばれ、このディレクトリ内の私は、ファイルを読むためにFile.read(path:string)
機能を使用したいnames.csv
と呼ばれるファイルを持っています。
ファイルへの相対パスは何ですか?のRails:<code>app</code>内部の私が持っているファイル
25
A
答えて
47
file = File.join(Rails.root, 'app', 'csv', 'names.csv')
File.read(file)
4
Rails.root
ポイントなので、パスは次のようになります。
File.read(File.join(Rails.root, 'app','csv','names.csv'))
5
:Rails.root.join "app", "csv", "names.csv"
Rails.rootは、パス名のオブジェクトを返します。 PathNameにはjoin
メソッドがあり、任意の数の引数をとり、パス名に追加して新しいパスを作成します。パス名#上
読むにはここに参加する:上記の答えを
http://www.ruby-doc.org/stdlib-1.9.3/libdoc/pathname/rdoc/Pathname.html#method-i-join
3
おかげで、それはまた私のためにこの方法を働いた:
"#{Rails.root}/public/spreadsheets/file_name.xlsx"
関連する問題
- 1. は、私は内容のファイルを持っているファイル
- 2. 私はJSON持っている内部の配列JSON
- 3. は、私は次の内容のファイルを持っているテキスト
- 4. 私は次の内容のファイルを持っているCSV
- 5. 私が持っているエラー.xlsファイル
- 6. : ``私が持っている.hファイルで
- 7. 私は、この内部のようなコードを持っている宝石を持っているクラスルビー
- 8. 私はフォルダ内のファイルを持っている
- 9. メッセージ私は、次の内容で.SHファイル持っているUNIX
- 10. ビルドAPK私はBATファイルの内容を持っているapktool
- 11. マルチレベルVitual私は、PHPファイル内の要件を持っている
- 12. WPFは、私がListViewコントロール内部のGridViewを持っている身体
- 13. 私は私が持っている私のseeds.rbファイルでは、シードスクリプト
- 14. 私は外部ファイルを持っている
- 15. ナント、私はディレクトリ内HelloNAnt.buildファイル持って
- 16. は、私が持っている私のRファイルのパラメータ
- 17. ソースファイル内のhibernate.cfg.xmlをしては、まだ私は私のsrcファイル内のhibernate.cfg.xmlファイルを持っている
- 18. は私が持っている私のapp.html.eexファイルではパーシャル
- 19. 私は私が持っているファイルのvim
- 20. は、私が持っているウィンドウの最上部とjQuery
- 21. NHibernateの外部キーは、私が持っている
- 22. は、私が持っている任意の幅を持つと私はフレキシボックスを使用して容器内部を、持っている柔軟なボックスに
- 23. 背景私はAppDelegate内のコードのこの部分を持っているパズル
- 24. は、私は関数内のコードのこの部分を持っているファイルサイズ
- 25. PHP:私は(配列内の)ファイルのリストを持っているファイル名
- 26. Laravel 5.1 - 私はこの店のOfferController内部メソッド持って
- 27. は、私が宣言したファイル内のクラスを持っているエクスポートクラス
- 28. パス変数は、私がTPLファイル内のフォームを持っている
- 29. MySQLの内部には、私はこのテーブルを持っているリレーショナルテーブルで
- 30. Fontawesomeは内部の私はこのコード行を持っているボタン
をするので 'File.join'を使用する必要はありません'Rails.root'は' Pathname'オブジェクトです。 'Rails.root +" app/csv/names.csv " –
特に、File.joinは1つ以上のパスパーツを '..'から守ることはできず、幸いにパスを生成しますFile.join(Rails.root、 'app'、 'csv'、 '../controllers/user_controller.rb')またはFile.join(Rails)が指定されている場合は 'app/csv /../ controllers/users_controller.rb' .root、 'app'、 'csv'、 '..'、 'controllers'、 'user_controller.rb') – nachbar