Странное поведение при извлечении объектов из синтаксического анализа в iOS

У меня проблема с получением объектов в отношениях с помощью запросов. Я попытался упростить пример и смог воспроизвести его, используя классы Parent и Child.

Сначала я сохраняю объект Parent с двумя дочерними элементами:

let child1: PFObject = PFObject(className: "Child")
child1["name"] = "Child1"

let child2: PFObject = PFObject(className: "Child")
child2["name"] = "Child2"

let parent: PFObject = PFObject(className: "Parent")
parent["name"] = "Parent1"
parent.addObject(child1, forKey: "children")
parent.addObject(child2, forKey: "children")

parent.saveInBackgroundWithBlock { (success, error) -> Void in
    print("success: \(success)")
}

Теперь, когда приложение запускается и в Parse есть фактические данные, я пытаюсь получить их с помощью PFQuery:

let query: PFQuery = PFQuery(className: "Parent")
    query.findObjectsInBackgroundWithBlock { (result, error) -> Void in
        print("result: \(result)")
}

Первые несколько раз, когда я запускал, результат печати дал мне что-то вроде этого:

result: Optional([<Parent: 0x7fa43356ae70, objectId: JzOgNq6Y2K, localId: (null)> {
children =     (
            {
        <Child: objectId: 98dfjhwejf, blah blah...>
    },
            {
        <Child: objectId: 34763kKJHF, blah blah...>
    }
);
name = Parent1;
}])

Потом вдруг, вообще ничего не меняя, я начал получать только массив objectIds для children:

result: Optional([<Parent: 0x7fa43356ae70, objectId: JzOgNq6Y2K, localId: (null)> {
children =     (
            {
        objectId = W3XflnNQupF;
    },
            {
        objectId = dI6Ky5n7lm;
    }
);
name = Parent1;
}])

Я также пытался использовать query.includeKey("children") для запроса, но это ничего не изменило. Любая помощь здесь очень ценится. Должно быть, я упускаю что-то очевидное. Я думал, что Parse упростит задачу. Вместо этого я трачу кучу времени на то, что кажется таким простым.


person jday    schedule 28.12.2015    source источник


Ответы (1)


Изменение имени класса Parent на другое заставило все снова начать работать.

person jday    schedule 28.12.2015