Parse ローカル データストアをテストして、主にオフラインで使用されるアプリの SQLite の代わりとして使用できるかどうかを評価しています。バグを見つけたのでしょうか?
Product クラスと Order クラスを考えてみましょう。
class Product : PFObject, PFSubclassing {
@NSManaged var productName: String!
}
class Order : PFObject, PFSubclassing {
@NSManaged var orderId: String!
@NSManaged var product: Product!
}
インターネットを無効にして、次のコードを実行すると、最後の行でクラッシュしますTried to save an object with a new, unsaved child.
let p = Product()
p.productName = "Test Product"
p.saveEventually()
let o = Order()
o.orderId = "TestOrder01"
o.product = p
o.saveEventually()
let query = Order.query()
query.whereKey("product", equalTo: p)
let results = query.findObjects() // crashes with Tried to save an object with a new, unsaved child.
それはプラットフォームの制限ですか、それとも私のコードのバグですか?
注: メモリからコードを入力したので、軽微な問題は無視してください。