Techioz Blog

そのようなファイルまたはディレクトリはありません @ rb_sysopen

概要

Ruby 2.1.1 を使用しています。このコードを実行すると、次のようになります。

<CSV.foreach("public/data/original/example_data.csv",headers: true, converters:              :numeric) do |info|

エラーが発生します:

No such file or directory @ rb_sysopen

以下に示すように、example_data.csv を同じディレクトリに配置すると機能しますが、上司は、すべての *.csv ファイルを別のディレクトリに配置することはできないと言いました。

<CSV.foreach("example_data.csv",headers: true, converters: :numeric) do |info|

解決策

Rails.root を使用して、プロジェクトのルートに対する相対パスを生成する必要があります。

CSV.foreach(Rails.root.join('public/data/original/example_data.csv'), ...