sql >> データベース >  >> NoSQL >> MongoDB

expressとmongodbを使用して動的URLを提供する

    私があなたを正しく理解すれば、私はそれを逆に行うでしょう。

    ショートバージョン

    1. idを取得します URLから
    2. 次に、このidに関連付けられたデータをデータベースから取得します
    3. そして、このデータを使用して最終ページを作成します。

    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... */});
      });
    });
    

    編集

    最後のコメントに従っていくつか変更を加えました...




    1. アトミックにサブドキュメントでmongodbドキュメントを作成しますか?

    2. ejsとexpressで画像を選択するにはどうすればよいですか?

    3. Clouderaオペレーショナルデータベースアプリケーション開発の概念

    4. MongoDBアップサートの説明