2015-08-27 3 views
0

В моем приложении есть функция, аналогичная положению сообщения. В моей базе данных синтаксиса у меня есть класс «Like». В классе Like есть 2 столбца, один «from_user», который является столбцом указателя, указывающим на пользователя, который ему понравился. Другой - «to_post», указывая на понравившуюся запись. мой код:using parse to Мне нравится сообщение

var likeObject = PFObject(className: "Like") 
    likeObject["from_user"] = PFUser.currentUser() 
    likeObject["to_post"] = objectIDArray[0] 

    likeObject.saveInBackground() 

Для справки, objectIDArray представляет собой массив, который содержит 1 элемент, идентификатор объекта данного поста, который я хочу нравиться.

Но когда я пытаюсь это, я получаю сообщение об ошибке сказав «ожидаемый тип * Сообщение, получил строку», которая относится к строке кода:

 likeObject["to_post"] = objectIDArray[0] 

Так как я делаю это так, чтобы объект ID почты (у меня есть доступ), можно указать, чтобы указать на эту должность?

благодаря

ответ

0

То, что вы хотите сделать, это использовать указатель класса Post. Параметр, который вы передаете в ключ to_post, должен иметь тип PFObject*, но вместо этого вы передаете NSString* (идентификатор объекта).

Учитывая, что у вас уже есть ObjectID сообщения, вам нужно извлечь PFObject из этого идентификатора и установить его на ваш likeObject.

Попробуйте это:

var query = PFQuery(className:"Post") 
query.getObjectInBackgroundWithId(objectIDArray[0]) { 
    (post: PFObject?, error: NSError?) -> Void in 
    if error == nil && post != nil { 
    likeObject["to_post"] = post 
    } else { 
    println(error) 
    } 
}