前提・実現したいこと
Realmに初期データを入れてマスターとして使いたいので
以下のサイトを参考にコードを組みましたが、コンパイルエラーが発生します。
何が原因なのかと、その解決方法を教えて頂きたいです。
参考のURL
https://qiita.com/negibouze/items/0fe2928ea2f00d8d3cd3
発生している問題・エラーメッセージ
let t = SeedType()という記載箇所で2つのエラーが発生します
1
1・Constructing an object of class type 'Self.SeedType' with a metatype value must use a 'required' initializer
2
1・Missing argument for parameter 'value' in call 2Insert 'value:<#Any#>' Fix
2のエラー関してはxcodeにて"fix"ボタンが用意されているので
押下すれば以下のソースコードに置き換わり、エラーは無くなりますが、理解ができていない為
その修正で良いのかも不明です。
fixedSource
1・let t = SeedType(value: <#Any#>)
該当のソースコード
RealmSeedSwift
1protocol RealmSeed { 2 associatedtype SeedType: DBBase 3 static var values: [[Any]] { get } 4 static func items() -> [SeedType] 5} 6 7extension RealmSeed { 8 static func items() -> [SeedType] { 9 return values.map { val in 10 let t = SeedType() //ここでエラー 11 t.id = val[0] as! Int 12 t.name = val[1] as! String 13 return t 14 } 15 } 16}
補足情報(FW/ツールのバージョンなど)
Swift 5
Xcode 12.3
Realm 10.5.0
あなたの回答
tips
プレビュー