Parse.com [Javascript API]: получение массива объектов синтаксического анализа

#javascript #arrays #parse-platform

#javascript #массивы #синтаксический анализ-платформа

Вопрос:

Итак, я работаю над проектом с javascript и parse.com где каждый пользователь будет связан с определенным объектом. У каждого объекта есть свой собственный номер, поэтому у меня есть массив с номерами этих объектов в объекте пользователя. Когда этот пользователь войдет в систему, появится массив с номерами объектов, с которыми мне нужно выполнить запрос. Я просмотрел документы и увидел журнал запросов с массивами, но они, похоже, не соответствовали моим потребностям.

Я хочу, чтобы массив возвращался с каждым объектом объекта из таблицы объекта. Вот краткая диаграмма структур классов:

Пользователь: [userInfo(username, pass, etc]|[facilities(array)]

Средства: [facilityName]|[facilityNumber]|[etc]

Таким образом, пользователь может быть связан с несколькими объектами. Мне нужно взять массив номеров объектов и получить обратно массив этих объектов. Так facilities могло бы быть [1,2,11] , и это вернуло бы три разных объекта объекта в массив.

Я попробовал это:

 function loadFacilities(user) {

    var facilitiesArray = user.get("facilities");

    var query = queryWithClassName("facilities");

    query.equalTo("facilityNumber", facilitiesArray);

    query.find().then(function (results) {

        console.log(results);

    });

}
  

Зная, что я, скорее всего, получу 400 bad request ошибку, потому facilityNumber что это число, а не массив, подобный facilities .

Итак, каков наилучший способ сделать это. Я могу легко создать запрос для каждой записи в facilities массиве, но это очень неэффективно.

Ответ №1:

Просто замените ваш equalTo на containedIn :

 query.containedIn("facilityNumber", facilitiesArray);
  

Документация здесь:
http://parse.com/docs/js/symbols/Parse .Query.html#containedIn