I am really struggling with building a REST api with the data I have below, everything works fine on the client side but when I need to make POST requests to update players I cannot figure out how to query mongodb.
The route
router.get('/api/teams/:teamid/player/:playerid', player.getById);
The mongodb query
module.exports = {
getById: function(req, res) {
models.Team.findOne({"players.player_name":"Jokim"}, function(err, player) {
if (err) {
res.json({error: 'player not found.'});
} else {
console.log(player);
res.json(player);
}
});
}
};
The Json data
[
{
"__v":0,
"_id":"5362dcf7e99615aa392d7d72",
"assists":80,
"blocks":14,
"feed":null,
"fouls":20,
"made_one":10,
"made_three":5,
"made_two":15,
"missed_one":4,
"missed_three":4,
"missed_two":20,
"percentage":50,
"points":44,
"rebounds":100,
"steals":33,
"team_name":"Bulls",
"players":[
{
"player_name":"Jokim",
"_id":"5365f079ed4914600d9342c7",
"team_name":"",
"team_id":"",
"points":0,
"made_one":0,
"made_two":0,
"made_three":0,
"missed_one":0,
"missed_two":0,
"missed_three":0,
"percentage":0,
"assists":0,
"rebounds":0,
"steals":0,
"blocks":0,
"fouls":0,
"feed":""
},
{
"player_name":"Taj",
"_id":"5365f079ed4914600d9342c6",
"team_name":"",
"team_id":"",
"points":0,
"made_one":0,
"made_two":0,
"made_three":0,
"missed_one":0,
"missed_two":0,
"missed_three":0,
"percentage":0,
"assists":0,
"rebounds":0,
"steals":0,
"blocks":0,
"fouls":0,
"feed":""
}
]
},
{
"team_name":"Wizards",
"points":44,
"made_one":10,
"made_two":15,
"made_three":5,
"missed_one":4,
"missed_two":20,
"missed_three":4,
"percentage":50,
"assists":80,
"rebounds":100,
"steals":33,
"blocks":14,
"fouls":20,
"feed":null,
"_id":"5362dcf7e99615aa392d7d75",
"__v":0,
"players":[
{
"player_name":"John Wall",
"points":22,
"made_one":3,
"made_two":4,
"made_three":5,
"missed_one":2,
"missed_two":3,
"missed_three":4,
"percentage":5,
"assists":2,
"rebounds":2,
"steals":2,
"blocks":5,
"fouls":3,
"feed":null,
"facebook_id":null,
"_id":"5362dcf7e99615aa392d7d77"
},
{
"player_name":"Bradley Beal",
"points":22,
"made_one":3,
"made_two":4,
"made_three":5,
"missed_one":2,
"missed_two":3,
"missed_three":4,
"percentage":5,
"assists":2,
"rebounds":2,
"steals":2,
"blocks":5,
"fouls":3,
"feed":null,
"facebook_id":null,
"_id":"5362dcf7e99615aa392d7d76"
}
]
}
]