Mongoosejs OR statement with ObjectIDs

I'm querying my Team schema and getting an array of id's. I've verified that teamIds is an array containing the correct id's. In my OR statement both home_team and away_team are ObjectID's for the Team Schema. I have a feeling that my problem has something to do with the fact that home_team and away_team are both ObjectID's.

Team.find({
    'conference.name': confName
}).select('_id').exec(function(err, results) {
    var teamIds = _.pluck(results, '_id');
    console.log(teamIds);

    finding = Game.find().or([
        {'home_team': { $in: teamIds }},
        {'away_team': { $in: teamIds }}
    ]);

    finding.exec(function(err, models) {
        // An error occurred
        if (err) return res.send(err, 500);

        // No models found
        if (!models) return res.send(404);

        console.log(models);
    });
});

This query is not work and I don't what I'm doing wrong.

This answer is based mostly on the documentation, rather than experimentation. It seems that the mongoose or function uses the query and wraps it into an or statement with the additional clause. In your case, you will be searching for 'everything' or the identifiers that exist in both the home and away team. It should be in either the home or away team, so writing this manually is recommended:

Game.find({$or: [
                 {'home_team': {$in: teamIds}},
                 {'away_team': {$in: teamIds}}
                 ]}, function(err, models) {
    // An error occurred
    if (err) return res.send(err, 500);

    // No models found
    if (!models) return res.send(404);

    console.log(models);
});