認証にnodejs、express、mongoose、およびpassportを使用しています。
ユーザーデータ(大量のデータ)を保持する User という名前のマングースモデルがあります。
いいえ、index.jade をレンダリングしてユーザー データをテンプレートに設定するルートを作成したいと思います。
私のルートは次のとおりです。
app.get('/something', function(req, res) {
res.render('index', {
user: req.user || {}
});
});
私のテンプレート:
doctype 5
html(lang="en")
head
body
script(type='text/javascript')
window.user = #{user};
次の2つの問題があります。
クライアントに User 構造全体を取得させたくありません。必要なのはいくつかの属性だけで、それだけです。Java と .NET から、データをクライアントに渡すことを目的とするオブジェクトを示す「データ転送オブジェクト」という用語があることを知っています。ノードで同等のものは何ですか? クライアントに関連データのみを渡すノードのベストプラクティスは何ですか?
クライアントは、ユーザーを識別するためにユーザー ID を必要とします。mongo の元のユーザー ドキュメント _id を渡したくありません。私に何ができる?どうにかしてIDをエンコードする必要がありますか?