質問

私はこれが可能かどうかを理解しようとしています。

Mongooseのブログの例を使用してデモを行いますが、実際のユースケースは少し複雑です。

var Comments = new Schema({
    title     : String
  , body      : String
  , date      : Date
});

var BlogPost = new Schema({
    author    : ObjectId
  , title     : String
  , body      : String
  , date      : Date
  , comments  : [Comments]
});

var BlogPost = mongoose.model('BlogPost');
var post = new BlogPost();

新しいコメントを作成して返す必要があります 新着 クライアントにコメントします。埋め込まれたドキュメントとしてコメントを持っていることは、私にとって本当に便利で、うまく機能します。ただし、新しいコメントを追加するたびに、すべてのコメントをクライアントに返送したくありません。

post.comments.push({ title: 'My comment' });

私がマングースを使用しているので、私がいくつかの方法を得ることができれば id コメントの編集やコメントの削除など、他の機能を追加するのに役立つ新しいコメントのうち。

これを行う唯一の方法は、自分のコレクションとしてコメントをすることです。

役に立ちましたか?

解決

あなたが解決しようとしている問題は、クライアントがコメントを投稿した後にページを更新する方法だと思いますよね?

だから、あなたは新しいコメントを挿入しています。これは、あなたがすでにそのデータを持っていることを意味します。挿入を実行し、データをクライアントに返します。または、さらに良いことに、クライアントには完全なコメントデータもあり、単独でそれをレンダリングできるため、単純なACKを返します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top