Pokud vám rozumím správně, udělal bych to naopak.
Krátká verze
- Získal bych
id
z adresy URL - Potom bych z databáze vytáhl data spojená s tímto
id
- A tato data použijte k vytvoření konečné stránky.
Nemusíte vytvářet novou trasu pro každou adresu URL. Adresa URL může obsahovat nějakou proměnnou (zde id
) a Express může analyzovat adresu URL, aby získal tuto proměnnou. Potom z tohoto id
můžete získat data potřebná k vytvoření správné stránky.
Dlouhá verze
Předpokládám, že někdo zadá tuto adresu URL:http://domain.com/1234
.
Předpokládám také, že máte proměnnou titles
což je sbírka MongoDB.
Trasu můžete mít definovanou takto:
app.get('/:id', function(req, res) {
// Then you can use the value of the id with req.params.id
// So you use it to get the data from your database:
return titles.findOne({ id: req.params.id }, function (err, post) {
if (err) { throw(err); }
return res.render('titles', {title: post.title, url: post.URL /*, other data you need... */});
});
});
Upravit
Udělal jsem nějaké změny podle posledních komentářů...