2015-10-06 4 views
0

Я хочу создать свой блог с Meteor, но вместо того, чтобы просто иметь блог, такой как platypus.meteor.com, я хочу создать отдельный шаблон Meteor для каждого сообщения в блоге, а затем отправить ссылку на выберите людей, таких как «platypus.meteor.com/thispost»Как сделать шаблоны Meteor доступными для целевой аудитории через URL?

Таким образом, человек будет видеть только сообщение, которое я намерен увидеть; чтобы увидеть других, им придется угадывать другие ценности, такие как «/ thatpost», «/ theotherpost» и т. д.

И в моем случае, если они наткнулись на них, нечего делать.

Это мой план:

Создать один шаблон в то время:

<template name="thispost"> 
    . . . 
</template> 

... и затем разрешить доступ к этому к кому я извещать его доступности (то есть, они просто введите ссылку, которую я отправляю в свой браузер).

Я не знаю, какую маршрутизацию мне нужно настроить; Я открыт для IronRouter или FlowRouter. Во всяком случае, мне нужен URL-адрес, например, «platypus.meteor.com/thispost» (после «утреннего утренника» этого проекта), чтобы показать пользователю содержимое этого шаблона и ничего больше.

Итак, мой вопрос: что мне нужно сделать, с точки зрения маршрутизации, для этого?

+3

Зачем даже беспокоиться о разных шаблонах, когда вы можете просто извлекать данные с помощью маршрутизации и подавать их на шаблон 'showPost'? –

+1

@Kyll: точно. С IronRouter вы просто настроили 'Router.route (" /: blog_post_title ", {template:" blog_post ", имя:" blog_post "})' –

+0

@AutumnLeonard: В этом случае мне * понадобится шаблон названный «blog_post»? –

ответ

1

Как насчет просто:

Router.route("/:templateName/:postId",{ 
    template: this.params.templateName, 
    data: function(){ return Posts.findOne({ _id: this.params.postId }) 
}); 

Тогда можно обобщенно разделить любое сообщение с любым шаблоном и иметь имя шаблона появляются прямо на маршруте.

+0

Все вниз, но девять, установите их на другой переулок, pard. –