Hvis jeg forstår dig rigtigt, ville jeg gøre det omvendt.
Kort version
- Jeg ville få
id
fra URL'en - Så ville jeg hente de data, der er knyttet til dette
id
, fra databasen - Og brug disse data til at bygge den sidste side.
Du behøver ikke oprette en ny rute for hver URL. En URL kan indeholde en eller anden variabel (her id
). ) og Express kan parse URL'en for at få denne variabel. Derefter fra dette id
du kan få de nødvendige data til at bygge den rigtige side.
Lang version
Jeg antager, at nogen indtaster denne URL:http://domain.com/1234
.
Jeg går også ud fra, at du har en variabel titles
som er en MongoDB-samling.
Du kan have en rute defineret som denne:
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... */});
});
});
Rediger
Jeg lavede nogle ændringer i henhold til de sidste kommentarer...