领域无法使用“(Person)”类型的参数列表调用“add”

时间:2015-07-17 17:08:18

标签: swift realm swift2

这个错误非常令人沮丧。我只是想在我的Realm数据库中添加一个对象,我已经到了复制和粘贴示例代码的地步,它将无法工作。所以我有一个添加人员方法来做到这一点:

func addPerson(person person:Person){
    realm.beginWrite()
    realm.add(person)
    realm.commitWrite()
}

并且realm变量在类标题中存储如下:

private var realm:Realm

init()方法中初始化:

realm = Realm()

我的真人课程如下:

import UIKit

class Person {
var name:String?
var relation: Relations?
var title: String?
var importance:Double?
var events:Array<Event>?
var image:UIImage?
init(name:String,relation:Relations?,events:Array<Event>?,image:UIImage?){
    self.relation = relation
    if relation != nil{
        self.title = relation!.title
        self.importance = relation!.importance
    }
    else{
        self.title = nil
        self.importance = nil
    }
    self.events = events
    self.image = image
    self.name = name
}

init() {

}
}

错误是如此令人沮丧,因为看起来Person类不符合Object超类,但实际上,这是唯一的选择

1 个答案:

答案 0 :(得分:1)

这只是我在评论中所说的摘要:

使用Object作为子类,因为类必须是Realm中的模型。