В Parse нужно извлекать вложенные данные отношений за один вызов - PullRequest
0 голосов
/ 29 апреля 2019

Я сейчас работаю с парсингом в реагировать на родной. У меня есть запрос, который выбирает данные из коллекции, которая имеет свойство по отношению к другой коллекции. Теперь я хочу получить все эти реляционные данные за один вызов, а не вызывать каждое отношение отдельно.

В настоящее время я получаю одну коллекцию, затем получаю ее реляционные данные отдельно в новом вызове.

const data1 = await result
      .get("data1")
      .query()
      .descending("createdAt")
      .find();
const data2 = data1.relation("test");
const data3 = await data2.query().find();

Теперь я хочу получить реляционные данные вместе с data1 в самом первом вызове.

Я хотел бы знать, возможно ли это даже при разборе. Если да, то как? Я пытался получить реляционные данные весь день, но безуспешно. Любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 01 мая 2019

Надеюсь, ты в порядке:)

Используя отношения, вам нужно будет получать данные более чем одним вызовом.

Зачем это нужно?

Требуется, потому что тип отношения создает новую базу данных в базе данных для хранения реляционных данных.

Пожалуйста, посмотрите на код ниже:

query.find().then(results => {
    for (var i = results.length - 1; i >= 0; i--) {
        let object = results[i];        
        object.relation("data1").query().each(function(relatedObject) {
            console.log(relatedObject);
            /* .... */ 
        });
    }
}).catch(console.error());

Есть ли другой способ получить данные за один вызов?

Да, есть! Чтобы настроить эту опцию, вам нужно будет использовать указатель или тип массива, тогда вы сможете использовать метод include () и получить значение столбца, подробнее об этом читайте ниже:

https://docs.parseplatform.org/js/guide/#one-to-many

...