首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用PFQuery getObjectWithId?

如何使用PFQuery getObjectWithId?
EN

Stack Overflow用户
提问于 2016-07-19 01:31:21
回答 1查看 243关注 0票数 1

使用PFObjectPFQuery时,我在调试这段代码时遇到了困难:

代码语言:javascript
复制
.......

if let someContents = object.valueForKey("contents") {
    let query = PFQuery(className: "TheContentList")
    do {let object = try query.getObjectWithId(someContents.objectId)
        print(object)
    } catch {
        print(error)
    }
}

通过上面的代码,我得到了这条使用getObjectWithId行的编译器消息

代码语言:javascript
复制
Cannot convert value of type 'String?!' to type 'String' in coercion

如果我改变了:

代码语言:javascript
复制
query.getObjectWithId(someContents.objectId)

至:

代码语言:javascript
复制
query.getObjectWithId("xyz23AcSXh")

它编译并在调试器中得到以下内容:

代码语言:javascript
复制
(lldb) p someContents.objectId
(String?!) $R4 = "xyz23AcSXh"

程序按预期打印一个对象。

所以问题是:,我应该如何写行query.getObjectWithId,以便能够使用someContents?内部的内容

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-19 02:37:23

您的属性objectId,是OptionalExplicitly Unwrapped Optional。如果您确定它包含一个String,请使用以下方法展开它:

代码语言:javascript
复制
let object = try query.getObjectWithId(someContents.objectId!!)

否则,如果你不确定:

代码语言:javascript
复制
if let objectId = someContents.objectId, id = objectId {
    let object = try query.getObjectWithId(id)
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38448234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档