【发布时间】:2015-11-18 05:23:59
【问题描述】:
使用查询获取对象时,仅获取某些列,其余列为零。我也尝试过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";})
解析数据浏览器中的Order 类
如果我尝试使用以下代码访问transactionId:
let order = orders?.first
print(order.objectForKey("transactionId"))
结果总是nil。
请帮忙。
更新
附件是 Parse 中的Order 类数据。由于所有行都有数据,并且我使用的对象在其他列(buyerUser,收费)中返回了一些数据,因此对象的transactionId 列中有数据。
【问题讨论】:
-
@sushithe 解析数据浏览器中有transactionId的数据吗?还是现在是一个空列
-
@Sushilthe,你能测试一下这个
print(order["transactionId"])吗?我认为问题在于您正在将PFObject类对象作为字典处理。 -
@KelvinLau 查看他对 Girish Kolari 回答的评论。
-
如果您可以共享名为 Orders 的解析类的结构,这将很有帮助。因为在打印 PFObject 时,我在您的共享日志中看不到 transactionId 的任何内容。
-
我不想证明任何事情,我只是根据您提供的数据进行评估。您确实要求社区成员提供帮助,对吗?当然,除非我弄错了。如果您绝对确定 this object 列中肯定有数据,那么请解释为什么 Parse 没有将它与对象一起返回?而且我不知道当我根据您提供的非常有限的数据提高合法分数时,您为什么要采取这种语气。如果您确定事务不为零,请在数据浏览器中向我们显示此对象,我们都会感到满意。
标签: ios swift parse-platform