How do I get an object and the specific relationship of that object in Parse?

Table

_User
    Default user class by Parse.com

tweet
   objectId<string>
   tweet<string>
   tweetBy<string><Pointer _User>
   createdAt<Date>
   updatedAt<Date>

follow
   objectId<string>
   following<string><Pointer _User>
   followedBy<string>
   createdAt<Date>
   updatedAt<Date>

Table data
------------------------------------------------------------------------
-                             _User                                    -
------------------------------------------------------------------------
| objectId | username | password |    email    | createdAt | updatedAt |
------------------------------------------------------------------------
| z12ttttt | Matt     | hidden   | taz@taz.com |random time|random time|
| z12zzzzz | Jobs     | hidden   | anu@taz.com |random time|random time|
| z12bbbbb | Ballu    | hidden   | lon@taz.com |random time|random time|
| z12aaaaa | Stephin  | hidden   | zon@taz.com |random time|random time|
------------------------------------------------------------------------

-----------------------------------------------------------
-                        tweet                            -
-----------------------------------------------------------
| objectId |   tweet   | tweetBy  | createdAt | updatedAt |
-----------------------------------------------------------
| blabla   | Head Pain | z12ttttt |random time|random time|
| blab12   | Back Pain | z12ttttt |random time|random time|
| blab23   | Sleepy    | z12ttttt |random time|random time|
| blab90   | Head Pain | z12zzzzz |random time|random time|
| blab90   | lets Dance| z12bbbbb |random time|random time|
| blab90   | lets jump | z12aaaaa |random time|random time|
-----------------------------------------------------------

-------------------------------------------------------------
-                        follow                             -
-------------------------------------------------------------
| objectId | following | followedBy | createdAt | updatedAt |
-------------------------------------------------------------
| blabla   | z12ttttt  | z12zzzzz   |random time|random time|
| blabla   | z12bbbbb  | z12zzzzz   |random time|random time|
-------------------------------------------------------------

      

Desired output:

The curent user is z12zzzzz i.e. Jobs

As Jobs follows Matt and Ballou, their tweet will be shown.

--------------------------------------------
 Matt (3min ago)
   Head Pain
--------------------------------------------
 Matt (4min ago)
   Back Pain
--------------------------------------------
 Matt (5min ago)
   Sleepy
--------------------------------------------
 Ballu (5min ago)
   lets Dance
--------------------------------------------

      

my problem here is i get users to follow but not their respectful tweets

        var username = window.localStorage.getItem('ls_username');
        var Follow = Parse.Object.extend("follow");
        var follow = new Parse.Query(Follow);
        follow.equalTo('followedBy', username);
        follow.include("following");
        follow.include("tweet");
        follow.include('tweet.tweetBy');
        follow.find().then(function(results){
            console.log(results);
            var contentHtml = '';
            for(i in results){
                var object = results[i];
               // Display individual tweets with their respected usernames
               // Display only tweets of people being followed by currentuser
            }
            $('#globalTweets').html(contentHtml);
        });

      

+3


source to share


1 answer


I think the question asked by a user is how do we get tweets made by users that a given user is following?



var _ = require('underscore');
// need a user object, not a username, if the relational fields are pointers
var currentUser = Parse.User.current();

// find follows where the user is the follower
var followQuery = new Parse.query("follow");  // conventional class name would begin with caps
followQuery.equalTo("followedBy", currentUser);
followQuery.find().then(function(follows) {
    // assume underscorejs
    var followedUsers = _.map(follows, function(f) {
        return f.get("following");
    });
    var tweetQuery = new Parse.Query("tweet");
    tweetQuery.containedIn("tweetBy", followedUsers);
    // aggressively fetch the authoring user info
    tweetQuery.include("tweetBy");
    return tweetQuery.find();
}).then(function(tweets) {
    // tweets are tweets by users followed by the given user
});

      

+1


source







All Articles