i have a simple post route that looks for the post _id
.
The problem is that the pathFor
helper creates a path like this:
ObjectID(\"52
You need to change the pathFor 'post'
to pass the hex representation of the ObjectId 52e16453431fc2fba4b6d6a8
instead of ObjectId('52e16453431fc2fba4b6d6a8')
Try something like this pathFor 'post' _id=this._id.toHexString
Once you are passing the hex string, you can use this in your router
return Posts.findOne({ _id: new Meteor.Collection.ObjectID(this.params._id)});
Can you try this:
this.route("post", {
path: "/post/:stringId",
waitOn:function(){
NProgress.start();
Meteor.subscribe("Teams");
},
before: function () {
NProgress.done();
},
data: function () {
Post = Posts.findOne({_id: Meteor.ObjectId(this.params.stringId)});
}
});
Now when you go to post/52e16453431fc2fba4b6d6a8
you should be able to see the correct post.
I am actually planning on using iron-router and objectid's in my application and thinking that this pattern would work.
I have not tried it yet, but let me know if there is a problem and I'll create a small test app to work it out.