ObjectMapperを使用して、モデルオブジェクト(クラスおよび構造体)をJSONとの間で変換しています。ObjectMapperを使用しているときに呼び出し時の引数ラベルが正しくありません
私はこのlet person = Person(username: "name", age: 24)
ようなインスタンスを作成しようとすると、私のようなエラーが出る:
間違った引数のラベルがコールコール
で
と追加の引数で、私はそのにを信じてどのように私はこれを修正することができますか?
import ObjectMapper
func viewDidLoad(){
super.viewDidLoad()
let person = Person(username: "name", age: 24)
}
struct Person: Mappable {
var username: String?
var age: Int?
init?(map: Map) { //To conform to Mappable class of ObjectMapper
}
// Mappable
mutating func mapping(map: Map) {
username <- map["username"]
age <- map["age"]
}
}
私はライブラリやそのMapクラスについては何も知らないが、 'Person'クラスの' init'メソッドは 'username'と' age'という名前ではなく 'map'という名前の1つのパラメータをとります。 – rmaddy
あなたが 'Person'の合成されたmemberwised初期化子を使用しようとしているようです。しかし、別のイニシャライザを明示的に定義したため、コンパイラはメンバワイズイニシャライザを合成しなかったため、手動で行う必要があります。 –
余分な初期設定子 'init(username:String、age:Int){}'を追加すると、エラーは消えます。 – user44776