Parse.com сопоставляет все указатели на массиве в данном столбце отношений - PullRequest
0 голосов
/ 22 марта 2019

У меня есть Conversation классы с атрибутом отношения members, указывающим на User класс.

Этот атрибут members состоит из людей, принадлежащих к определенному разговору.

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

Я пытался использовать containsAll("members", users), но вместо этого получил undefined. containedIn() работал, но он возвращал все совпадающие диалоги, в которых есть хотя бы один совпадающий User в массиве. equalTo("members", users) также не работал, и обратите внимание, что переменная users является массивом указателей, а не просто массивом строк objectId, но я тоже пробовал это, но ни к чему не привел.

Вот что я попробовал: * Создано И запросов, где userRelationQuery.equalTo('member', ParseUser1) до N количество пользователей и до сих пор не работает

Вот мое решение, но вы можете исправить его для улучшения

const members = getMembers();

let query = new Parse.Query("Conversation").equalTo(
 "members",
 members[0]
);

for (let i = 0; i < members.length; i++) {
 query = new Parse.Query("Conversation")
   .matchesKeyInQuery("objectId", "objectId", query)
   .equalTo(
     "members",
     members[i]
   );
}

const chat = await query.includeAll().first();

1 Ответ

0 голосов
/ 04 апреля 2019

Это должно работать для вас

var conversationClass = Parse.Object.extend('Conversation');
var conversationQuery = new Parse.Query(conversationClass);
return conversationQuery.first()
    .then(queryResult => {
        var userRelationQuery = queryResult.relation('members').query(); //You can get all users releated to this conversation
        //userRelationQuery.equalTo('username', 'Blank0330') // Or you can add more conditions
        return userRelationQuery.find()
            .then(users => {
                return users; //This is your releated users
            });
    });

Для получения дополнительной информации о Parse-JS-SDK Relation

...