Подтвердить что ты не робот

PFObject не имеет члена с именем "saveInBackground" в Xcode 6.0.1, Yosemite GM3

Парень действует очень странно в Yosemite, saveInBackground утверждает, что он не является членом PFObject.

var score = PFObject(className: "score")
    score.setObject("Mo", forKey: "name")
    score.setObject(1, forKey: "scoreCount")
    score.saveInBackground()

Очевидно, что это должно сработать, возможно, это проблема с Xcode 6.0.1 или Yosemite GM3 (или комбинацией). Чтобы быть ясным, использование saveInBackgroundWithBlock отлично работает.

Кто-нибудь еще испытал эту или подобную странную ошибку?

4b9b3361

Ответ 1

Метод saveInBackground объявляется в заголовке для возврата объекта BFTask *, который является частью рамки Bolts. Убедитесь, что ваш проект связывает структуру Bolts, а затем добавьте

#import <Bolts/Bolts.h>

к вашему заголовку мостов.

Это позволило решить несколько "отсутствующих" API в Swift для меня (этот, а также PFAnalytics.trackAppOpenedWithLaunchOptions, упомянутый здесь: Почему у моих PFAnalytics нет функции trackAppOpeneWithLaunchOptions? (IOS SWIFT )

Ответ 2

Если вы не хотите вмешиваться в файлы фреймворка Parse, вы должны заменить:

score.saveInBackground()

с:

score.saveInBackgroundWithTarget(nil, selector: nil)

Ответ 3

Не нужно связывать заголовки с момента выпуска 1.0. Чтобы устранить проблему, просто добавьте import Bolts вверху своего класса ниже import Parse:

import Parse
import Bolts

С добавленным оператором импорта saveInBackground() должен работать как есть.

Ответ 4

ok, получив его, в синтаксическом анализе, откройте открытые заголовки, перейдите к PFObject.h и откройте его, перейдите туда, где он говорит @name Saving Objects, и запишите это:

(void)saveInBackground;

запустите приложение или закройте и снова откройте Xcode и попробуйте снова записать код, а saveInBackground должен быть теперь PFobject вашего счета.

Ответ 5

эта работа

testObject.saveEventually()