在使用查询获取对象时,仅获取某些列,其余列为nil.我也试过fetchIfNeededInBackgroundWithBlock,但没有运气.
查询:
let query = PFQuery(className:"Order") query.whereKey("buyerUser",equalTo: PFUser.currentUser()!) query.findObjectsInBackgroundWithBlock { (orders: [PFObject]?,error: NSError?) -> Void in if(error == nil){ print(orders?.first) } }
输出:
Optional(<Order: 0x7ff778011940,objectId: KytyBZD9zV,localId: (null)> { buyerUser = "<PFUser: 0x7ff77353e520,objectId: xxxxx,localId: (null)>"; charged = 1; fulfilled = 0; item = "<Item: 0x7ff778011dd0,objectId: GN277W4mO0,localId: (null)>"; shippingUser = "<PFUser: 0x7ff778012270,objectId: xxxx,localId: (null)>"; stripePaymentId = "xxxxxx";})
Parse数据浏览器中的订单类
如果我尝试使用以下代码访问transactionId:
let order = orders?.first print(order.objectForKey("transactionId"))
结果总是零.
请帮忙.
更新
附件是Parse中的Order类数据.由于所有行都有数据,而我使用的对象已经在其他列(buyerUser,charge)中返回了一些数据,因此对象的transactionId列中有数据.
解决方法
我在您发布的控制台消息中看不到“transactionId” – 如果您要查找的密钥不存在,它将返回nil
charged = 1; fulfilled = 0; item = “”; shippingUser = “”; stripePaymentId =
“xxxxxx”;})
更新:
控制台中的服务器信息和消息不匹配
eq:顺序:0x7fb253fedc80,objectId:WrgiDFxZW6,它不能位于附带问题的服务器数据中.
如果您在Parse SDK中引用不同的表而不是在Web中使用的表(屏幕截图),则可能会发生这种情况 – 确保您在代码和Web中裁判相同的表.