Nodejs: Moongoose can't find the object

So I have a mongodb on mongolabs that looks something like this:

under the collection "news"

 [{
"_id": {
    "$oid": "542aab88e4b0e67da1edd1bd"
},
"year": 2014,
"data": {
     "someinfo":"cool info"
 }
}]

And on node I have the following:

 //dependencies
 var mongoose = require("mongoose");
 var Schema = mongoose.Schema;

 //Setting up the schemas
    var newsSchema = new Schema({
        year: String, 
        data: Object
    });
    mongoose.model('news',newsSchema);

  //routes
  var mongolabs = express.Router();
  mongolabs.route('/List/:type1/:year')
  .get(function(req, res){
           mongoose.model(req.params.type1).find({year:req.params.year}, function(err,suc) {
            res.jsonp(suc);
           });
    });
    app.use('/mongo', mongolabs);

unfortunately when I go http:///mongo/List/news/2014, it returns empty. I already tried everything I can think of, needless to say I am a newbie to mongoose, node and mongodb.

Probably you're passing null to the .find() method.

You're doing this:

{ year: req.params.type1.year }

,when you should be doing:

{ year: req.params.year }

You're trying to query for a number value with a string value, hence the empty results.

Try casting the req.params.years as a number by adding the unary plus before your param.

{ year: +req.params.year }

You also could use the parseInt() function:

var year = parseInt(req.params.years, 10);