Pergunta

Eu estou usando um Parse.Relation para o grupo de usuários em um Tópico.Como faço para recuperar todos os tópicos que têm um topic.relation apontando para um determinado usuário?

A questão é sobre como fazer isso em uma única chamada/retorno de chamada.

// first add() a User object to the Topic's Parse.Relation
this.friendRelation = this.topic.relation("friend");
this.friendRelation.add(user);
// save the Topic to save its newly added .relation to Parse/Mongo
this.topic.save();

// iterate by adding the same User to several Topics

// (...)

// then you want to retrieve all Parse.Relations of all Topics where that 
// specific user is pointed to

// the non-optimized way is to traverse every row in the Topics index 
// and query each topic for its relations to find matching pointers to our user, 
// which means that the number of calls is bound to the number of rows – fine for
// 10 topics in Mongo but passed 100 it won't be tolerable.
Foi útil?

Solução

Construir uma consulta para a classe Tópico e adicione um equalTo restrição.

var query = new Parse.Query(Topic);
query.equalTo("friend", user);
query.find({success: function (returnedTopics) {
    ...
    },
    error: function (...) {
    }
});

Isso irá retornar todas as Tópico objetos que contêm o usuário no seu amigo de relação.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top