这是我的示例代码,它在链接上给出一个nil,因为self.init()名为get property,这是另一种方法吗?
class channel : Object, Gloss.Decodable {
var id:String?
var channelName:String?
dynamic var links: Links? = nil
public required convenience init?(json: JSON) {
self.init()
self.id = "id" <~~ json
self.channelName = "channelName" <~~ json
self.links = "links" <~~ json
}
override static func primaryKey() -> String? {
return "id"
}
var getLinks:Links{
get{
return self.links! //Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
}
}
class Links: Object, Gloss.Decodable {
var href:String?
var rel:String?
var method:String?
required convenience init(json: JSON) {
self.init()
self.href = "href" <~~ json
self.rel = "rel" <~~ json
self.method = "method" <~~ json
}
}
}
我找不到解决问题的方法。任何人都有同样的问题,或提出一些出路。 谢谢!
将链接更新为
var getLinks:Links?{
get{
guard let link = self.links else{
return nil
}
return link
}
}
这会出错:由于未捕获的异常终止应用&#39; RLMException&#39;,原因:&#39;属性&#39;链接&#39;声明为&#39; _TTCC6WTV_GO11ChannelList5Links&#39;,这不是受支持的RLMObject属性类型。所有属性必须是基元,NSString,NSDate,NSData,NSNumber,RLMArray,RLMLinkingObjects或RLMObject的子类