Search code examples
javascriptmeteoriron-router

Why Iron Router function doesn't redirect?


Using FS.Collection to store files, I need to redirect to currently submitted file, but I can't get Iron Router working. It returns result._id, but don't route and just breaks.

Here is the event change function for submitting files.

'change #input':function(event, template){
    var email = template.find('#email').value;
    var title = template.find('#booktitle').value;
    if (email != '' && title != '') {
      // Get value
      var file = $('#input').get(0).files[0]
          
          fsFile = new FS.File(file);
          //Metadata
          fsFile.metadata = {
            title:title,
            email:email
           } 
      Books.insert(fsFile,function(err,result){
          if(!err){
             console.log(result._id);
             Router.go('sumarize', {_id:result._id});
           }
      })
    } else {
      alert("Insert your email address, please.")
    }
  }

And Iron Router function :

Router.route('/summarize/:_id', {
	name: 'summarize',
	data: function() { return Books.findOne(this.params._id);
	}
});


Solution

  • You have a typo in your Router.go call:

    Router.go('summarize', {_id:result._id});