Parse.com pointer request Objects in Javascript

I have a Company class that has User pointers. The query I want in the Company class is as follows:

Get strings Company , where the User has a name equal to 'ABC'

So, how do I form this request?

var Company = Parse.Object.extend("Company"); var query = Parse.Query(Company); query.include("User"); query.equalTo("name") ???? 

Is it possible to write such a request in one request? Thanks.

+8
javascript cloud-code
source share
3 answers

First you need to request the user depending on the name "ABC". Then, in the callback of this request, execute the request in your company table using the objectId returned from the user request. Something like that:

 var userQuery = Parse.Query('_User'); var companyQuery = Parse.Query('Company'); userQuery.equalTo('name', 'ABC'); userQuery.find({ success: function(user) { var userPointer = { __type: 'Pointer', className: '_User', objectId: user.id } companyQuery.equalTo('user', userPointer); companyQuery.find({ success: function(company) { // WHATEVER }, error: function() { } }); }, error: function() { } }); 
+10
source share

You can use the internal query:

 var Company = Parse.Object.extend("Company"); var mainQuery = Parse.Query(Company); var UserObject = Parse.Object.extend("User"); var innerUserQuery = new Parse.Query(UserObject); innerBankQuery.equalTo("name", "ABC"); mainQuery.matchesQuery("bank", innerBankQuery); var ansCollection = mainQuery.collection(); ansCollection.fetch({ success: function(results) { // Do whatever ... } }); 
+3
source share

I have to say that the request will be ...

 const userQuery = Parse.Query('_User'); userQuery.equalTo('name', 'ABC'); userQuery.find().then((user) => { const companyQuery = Parse.Query('Company'); companyQuery.equalTo('user', { __type: 'Pointer', className: '_User', objectId: user.id }); companyQuery.find().then((company) => { console.log(company); }); }); 
+2
source share

All Articles