neco1001 / kanji

漢字学習サービス学べるくん(仮)
0 stars 0 forks source link

初期データの登録方法について #4

Closed neco1001 closed 2 years ago

neco1001 commented 2 years ago

現状seedで仮登録しているが、送り仮名の登録がうまくいかなそう

[
  { character: '山', onyomi: [], kunyomi: ['やま'] },
  { character: '川', onyomi: [], kunyomi: ['かわ'] },
  { character: '一', onyomi: ['イチ'], kunyomi: [] },
  { character: '二', onyomi: ['ニ'], kunyomi: [] },
  { character: '三', onyomi: ['サン'], kunyomi: [] },
  { character: '赤', onyomi: [], kunyomi: ['あか'], okurigana: 'い' }
].each do |kajji|
  KanjiCharacter.create(character: kajji[:character]).tap do |character|
    kajji[:onyomi].each { |onyomi| KanjiReading.create(kanji_character: character, type: :onyomi, reading: onyomi) }
    kajji[:kunyomi].each { |kunyomi| KanjiReading.create(kanji_character: character, type: :onyomi, reading: kunyomi, okurigana: kajji[:okurigana]) }
  end
end

「赤」だと微妙だが訓読みが複数あった場合にどの読み方に送り仮名を設定すればいいか分からない。seedでのデータ作成仕様を変更してもいいが今後項目がさらに追加された時に別の不都合が出てくることもありえるため、CSVファイルでの取込作成にした方が良いかも。

neco1001 commented 2 years ago

Seed Fuでもよさそう

neco1001 commented 2 years ago

Seed Fuはメンテされてなさそうなので見送り

neco1001 commented 2 years ago

CSVファイル取込処理を作成するのが面倒なので、一旦seedでの初回作成のみで対応する予定。(不都合が出てきたら別途考える)