2015-09-11 4 views
1

Как заполнить указатели в объекте User? В моей таблице Parse User я имею следующий массив указателей: «игрушки», который указывает на объект типа «Игрушка».parse.com Как заполнить указатели объектов пользователя?

В моем IOS клиенте:

PFUser.currentUser()?.toys возвращает массив указателей на игрушки, а не полные объектов игрушек. Как получить и сохранить все объекты в PFUser.currentUser()?.toys, чтобы при следующем доступе к PFUser.currentUser()?.toys я получаю полные объекты?

Спасибо.

UPDATE:

Пример кода, который показывает, что я имею в виду (спасибо Chaitanya Шах):

let query = PFUser.query()! 
query.includeKey("toys") 
query.getObjectInBackgroundWithId(PFUser.currentUser()!.objectId!, block: { 
    (object: PFObject?, error: NSError?) -> Void in 
     if object != nil { 
      if let toys = object!["toys"] as? [PFObject] { 
       println(toys) // full Toy objects 
       println(PFUser.currentUser()?.toys) // Toy pointers 
       // the two toys above won't be the same. What I want is 
       // to have PFUser.currentUser() contains fully fetched toys 
       // objects so I can use it throughout my app later without 
       // have to re-fetch them. 
      }) 
     } 
}) 

ответ

1
let query = PFUser.query()! 
query.includeKey("toys") 
query.getObjectInBackgroundWithId(PFUser.currentUser()!.objectId!, block: { 
    (object: PFObject?, error: NSError?) -> Void in 
     if object != nil { 
      if let toys = object!["toys"] as? [PFObject] { 
       // toys! 
      }) 
     } 
}) 
+0

Да, но если доступ к 'PFUser.currentUser() !. toys' это все еще массив указателей, что является сущностью моего вопроса. –

+0

@VanDuTran, этот ответ правильный, но слабый, потому что он не содержит объяснений. Существенной частью является 'query.includeKey (« toys »)', что заставляет запрос также извлекать связанные объекты, на которые ссылаются указатели в массиве игрушек. – danh

+0

@danh Я понимаю «query.includeKey (« игрушки »)'. Однако 'PFObject?/PFUser? ', Возвращаемый' query.getObjectInBackgroundWithId() ', не совпадает с' PFUser.currentUser() ', поэтому после этого вызова метода' PFUser.currentUser()! указатели не полные объекты. Я добавлю более подробные сведения к моему оригинальному вопросу. –

Смежные вопросы