上記の問題の解決策をこのフォーラム全体で検索しましたが、試したすべてが機能しませんでした。基本的に、私は sqlite3 データベースに対応するライブラリ テーブルを持つモデル ライブラリを持っています。データベースにインポートするすべてのデータを含む libraries.csv という名前の csv ファイルがあります。
このページの 2 番目の回答の方法を試しましたが、まだ機能していません。rake ファイル 'import_libraries.rake を lib/tasks フォルダーに作成し、libraries.csv ファイルもそのフォルダーに保存しましたが、次のエラー メッセージが表示され続けます。
レーキが中止されました!
タスク 'import_libraries' をビルドする方法がわからない (タスクを --trace で実行して完全なトレースを参照)
これは私が使用している現在のコードです:
require 'csv'
desc "Imports a CSV file into an ActiveRecord table"
task :import, [:filename] => :environment do
CSV.foreach('libraries.csv', :headers => true) do |row|
Library.create!(row.to_hash)
end
end
しかし、bundle exec rake import_libraries を実行すると、上記のエラー メッセージが表示されます。
私が間違っていることはありますか?助けていただければ幸いです。ありがとう
編集
rake ファイルの名前を import_libraries.rake から import.rake に変更しました bundle exec rake import を実行すると、次のエラー メッセージが表示されます。
レーキが中止されました! UTF-8 の無効なバイト シーケンス C:/Users/username/rails_app_name/lib/tasks/import.rake:4:in `block in ' Tasks: TOP => import (タスクを --trace で実行して完全なトレースを表示)