私はフォームと2つのデータベースコレクションを扱っています。フォームが送信されると、入力要素のすべてのデータが対応するコレクションに格納されます。 blogs[content]
のような入力名属性を設定し、.create()
でデータベースにデータを送信するルートでそのオブジェクトを使用するのはかなり簡単です。htmlフォームによるmongoの参照の扱い
ただし、コレクションに別のコレクションへの参照がある場合、これを行う方法はわかりません。私はあなたがまっすぐルートからpush()
機能付きのデータを関連付けることができます知っている
var Blog = new mongoose.Schema({
content: String,
authors: [{
type: mongoose.Schema.Types.ObjectId,
ref: "Author"
}]
});
var Author = new mongoose.Schema({
name: String
});
を、私はフォーム自体からそれをやりたい:
のは、私は次のコレクションを持っているとしましょう。
form
からBlog
の中にあるauthors
の参照にデータを送信するにはどうすればよいですか?私はblogs[authors]
として入力の名前を設定しようとしましたが、それは動作しません、推測は簡単ではありません。
それは可能ですか?または、ルートから唯一のオプションを選択していますか?
ありがとうございます!
EDIT:
<form action="/blogs" method="POST">
<select name=" HERE GOES THE name ATTRIBUTE I DON'T KNOW HOW TO SET ">
<option value="0" selected>Authors</option>
<% authors.forEach(function(author){ %>
<option value="<%= author._id %>"><%= author.name %></option>
<% }) %>
</select>
</form>