私は学生のデータベースを作成しており、ヘッダーを含むcsvファイルを読み込み、各非ヘッダー行を生徒オブジェクトとして格納する次のコードを用意しています。csvの列をモデル化するには?
class Student < ApplicationRecord
def self.import(file)
CSV.foreach(file.path, headers: true) do |row|
Student.create! row.to_hash
end
end
end
私の問題は、私はインポートする必要のCSVファイルを別の形式のものとすることができるということです。いくつかのヘッダーは次のように整理されているかもしれません。
大学院生|ファーストネーム|姓|学部小学生
ファーストネーム| Last_name |メジャー|マイナー
First_name | Last_name | Class_year
ご覧のとおり、すべてのフィールドが存在するわけではなく、必ずしも同じ順序ではない可能性があります。私はこれにどのように対処できますか?あなたが属性を持つ列をマップするために、このような何かを行うことができ
を、なぜあなたはすべての列が必要なのか、なぜあなたは順序で列が必要なのでしょうか? – Leantraxxx
生徒の属性には「メジャー」という名前が付いているかもしれませんが、列名は「学部長」ですのでフィールド「メジャー」のみを知っているためフィールド「学部メジャー」は認識できません –
あなたは申し訳ありません – Leantraxxx