Извлечение СОХРАНЕННОГО идентификатора объекта из синтаксического анализа

#ios #objective-c #cocoa-touch #parse-platform

#iOS #objective-c #cocoa-touch #синтаксический анализ-платформа

Вопрос:

Я пытаюсь получить objectId мои записи синтаксического анализа. Я могу сохранять и извлекать данные нормально, но, просмотрев все документы parse, Google и т. Д., Я, похоже, не могу получить четкий ответ о том, как получить id для доступа к записям перед основным блоком без жесткого кодирования objectId , как в руководстве от Parse.

getObjectInBackgroundWithId:@"SS8Cw7rT1h" <——- Пытаюсь получить object id , чтобы перейти сюда

Я сохраняю данные для parse inc objectId здесь (все хорошо)

 PFObject *scheme = [PFObject objectWithClassName:@"SchemeProvider"];

//Sections of class
scheme[@"schemeName"] = self.schemeName.text;
scheme[@"schemeRegistrationNumber"] = self.registrationNumber.text;

//Save then get object id of saved row
[scheme saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {

    [scheme objectId];
     NSLog(@"SCHEME ROW ID %@",[scheme objectId]);



}];
  

Извлечение из синтаксического анализа (все хорошо) — за исключением того, что не удается получить objectID перед основным блоком

 PFQuery *queryScheme = [PFQuery queryWithClassName:@"SchemeProvider"];

//NSString *myobjectId = [queryScheme valueForKey:@"objectId"]; <------trying to retrive object id

[queryScheme getObjectInBackgroundWithId:@"SS8Cw7rT1h" block:^(PFObject *retrivedData, NSError *error) {

    NSLog(@"All data = %@", retrivedData);

}];
  

Ответ №1:

Я только что столкнулся с этой проблемой и привел для вас пример в swift

Существует функция, которая сохраняет блок в фоновом режиме

Вы можете получить доступ к идентификатору объекта при сохранении в блоке, который запускается после сохранения его в облаке

 var foo = PFObject(className:"Foo")
foo["bar"] = "something"
foo.saveInBackgroundWithBlock(){(succeeded: Bool!, error:NSError!) in

   if succeeded
   {
       self.fooLabel.text = foo.objectId
   }
}
  

Вы можете сохранить идентификатор объекта для определенного объекта, например, в структуре данных или с основными данными, если вам это нужно для последующего доступа

В противном случае вам нужно запросить объект со значениями свойств, я думаю

как показано здесь:https://www.parse.com/docs/ios_guide#queries-basic/iOS

Надеюсь, это поможет

Комментарии:

1. Привет, я уже получил objectId сохраненный с использованием блочного метода, проблема в попытке прочитать его

2. Метод блока — это путь вперед, чтобы получить obj id , я обновил свой код, поскольку мой код был там не совсем правильным, думаю, что сохранение идентификатора объекта в NSSUser defaults подойдет, если у кого-то еще нет более чистого способа. Спасибо за быстрый код, полезный. поддержано