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

Добавление поля указателя в подкласс PFUser

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

С любым другим подклассом PFObject я просто добавлю свойство Dynamic и обязательно буду использовать includeKey при запросе.

Однако для подкласса PFUser я никогда не запрашиваю. Как заставить объект-указатель извлекать?

4b9b3361

Ответ 1

Это простой двухэтапный процесс в objective-c, даже с подклассом:

  • Создайте локальный объект, который представляет указатель, хотя у вас еще нет данных
  • Используйте fetchIfNeededInBackground для локального размещения локального указателя

    PFObject *yourPointerObject = [[PFUser currentUser] objectForKey"pointerKey"];
    [yourPointerObject fetchIfNeededInBackground];
    

Ответ 2

Ссылка на PFUser

PFUser *userObjRef = [PFUser currentUser];

Получение ссылки на объект

NSString *columnIdStr = [userObjRef objectForKey:@"column_id_Ref"];

Получение базового объекта, связанного с column_id

[[PFUser currentUser] refreshInBackgroundWithBlock:^(PFObject *object, NSError *error) {
    [[object objectForKey:@"column_id_Ref"] fetchInBackgroundWithBlock:^(PFObject *object, NSError *error) {
        if (!error){
            self.nameLabel.text = [object objectForKey:@"obj_name_ref"];
        }
    }];

}];

[[PFUser currentUser] fetchInBackgroundWithBlock:^(PFObject *object, NSError *error) {
        [[object objectForKey:@"column_id_Ref"] fetchInBackgroundWithBlock:^(PFObject *object, NSError *error) {
            if (!error){
                self.nameLabel.text = [object objectForKey:@"obj_name_ref"];
            }
        }];

    }];

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