私があなたを正しく理解すれば、私はそれを逆に行うでしょう。
ショートバージョン
-
id
を取得します URLから - 次に、この
id
に関連付けられたデータをデータベースから取得します - そして、このデータを使用して最終ページを作成します。
URLごとに新しいルートを作成する必要はありません。 URLには、いくつかの変数(ここではid
)を含めることができます )およびExpressは、この変数を取得するためにURLを解析できます。次に、このid
から 適切なページを作成するために必要なデータを取得できます。
ロングバージョン
誰かがこのURLを入力すると仮定します:http://domain.com/1234
。
また、変数titles
があると仮定します これはMongoDBコレクションです。
次のようにルートを定義できます:
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... */});
});
});
編集
最後のコメントに従っていくつか変更を加えました...