Question: how do I use something besides /:_id for url?


Beginner Question: So if I were making an app similar to microscope, but I wanted to use something besides :_id for the url path, how would I do that.

I currently have:

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

but I would like to do something like

Router.route('/bands/:bandName', {
    name: 'bandPage',
    data: function() {return Bands.findOne(this.params.bandName);}

Is this possible?


Short answer - yes (-:


any tips on what i’m missing?


Nothing special, but you have to control the uniqueness of this field
I’m using ongoworks:speakingurl for this purpose, but before adding to DB, I’m checking uniqueness


This should work fine. You may be missing the field in the mongo query:

Router.route('/bands/:bandName', {
    name: 'bandPage',
    data: function() {return Bands.findOne({bandName: this.params.bandName});}

Useful package for auto generating unique slugs: todda00:friendly-slugs


Thanks! That was what I was missing. Learning as I go :slight_smile:


Have a read of this:

Steps you through how you can do this yourself.