2015-03-03 90 views
0

我对iOS/Swift/Parse相当陌生,我试图使用PFSubclassing构建一个类的模型。解析对象类型Swift中的PFSubclassing

我想代表应该是这个样子

{ 
    text: "" 
    location : { 
     name: "", 
     longitude: "", 
     latitude: "" 
    } 
} 

所以车费我的模型拥有的数据是

class LocationModel { 
    var name: String? 
    var longitude: Float? 
    var latitude: Float? 
} 


class PostModel: PFObject, PFSubclassing { 

    class func parseClassName() -> String! { 
     return "Post" 
    } 

    @NSManaged var text: String? 
    var location: LocationModel? 
} 

test属性被保存成功但我无法获得location属性保存。

我使用保存记录解析的代码是

var test = PostModel() 
    test.location?.name = "ESB" 
    test.location?.latitude = 1 
    test.location?.longitude = 1 

    test.text = "This is a test post to see if this works!" 

test.saveEventually { (success: Bool, error: NSError!) -> Void in 
    println(error) 
    println(success) 
} 

我做网上挖了很多,但我无法找到如何,代表了一个Object数据类型的解决方案Swift使用分析PFSubclassing

任何帮助将不胜感激。 谢谢

回答

0

我在雨燕1.2见过几个不同的方法来PFSubclassing,但以下最适合我:

首先,确保你在你的Objective-C桥接报如下:

#import <Parse/PFObject+Subclass.h> 

这里是子类PFObject的一个非常简单的例子:

import Foundation 
import Parse 

class Car: PFObject, PFSubclassing { 
    override class func initialize() { 
     self.registerSubclass() 
    } 

    static func parseClassName() -> String { 
     return "Car" 
    } 

    @NSManaged var model: String 
    @NSManaged var color: String 
    @NSManaged var yearManufactured: Int 

} 

所以哟乌尔情况下,这将是:

class PostModel: PFObject, PFSubclassing { 
    override class func initialize() { 
     self.registerSubclass() 
    } 

    static func parseClassName() -> String { 
     return "Post" 
    } 

    @NSManaged var text: String? 
} 

关于你LocationModel ......我有点困惑,正是你正在尝试与实现。我希望这有帮助。