Search code examples
meteoriron-router

how to use Collection.find() inside route action of Meteor js


I have a peice of code;

Router.configure({
    layoutTemplate: 'master_layout'
});


Router.map(function(){

    this.route('generatePDF', {
    path: '/pdf',
    where: 'server',
    action: function() {

        console.log(voters.findOne().fetch());
        var voters = voters.find();

    ....
    }
});

How can I use any given collection inside action of routes.

i get error as below;

W20160510-20:19:29.909(5.5)? (STDERR) TypeError: Cannot call method 'findOne' of undefined
W20160510-20:19:29.910(5.5)? (STDERR)     at [object Object].action (lib/routes.js:40:29)
W20160510-20:19:29.910(5.5)? (STDERR)     at boundNext (packages/iron_middleware-stack/lib/middleware_stack.js:251:1)

Solution

  • Try this:

    action: function () {
        this.render('someTemplate',{
            data: function(){
                return Voters.find()
            }
        });
    }