2016-08-09 4 views
0

mongodbにフォームを挿入しています。データがコレクションに正常に格納されています。しかし、私は次のように、ユーザの会社の詳細を持っています。この文書の複数のreq.body.nameを1つのドキュメントに保存する方法Node.js

company: 
[{companyname:req.body.companyname, 
industry:req.body.industry, 
jobtitle:req.body.jobtitle, 
startdate:req.body.prevstartdate, 
enddate:req.body.prevenddate, 
roles:req.body.roles}] 

とスキーマです:クライアントビューで

company: [{ 
      companyname:String, 
      industry:String, 
      jobtitle:String, 
      startdate:Date, 
      enddate:Date, 
      roles:String,}] 

は、ユーザーが5回まで会社のフォームを追加することができます。だから、私はどのように配列に追加されたフォームの値を格納し、mongodbに保存することができるか知りたい。

答えて

0

Schemaは、フィールドごとに1つだけStringを許可します。

array of Stringsに変更する必要があります。その会社名の文書が存在しない場合にのみ、

company: [{ 
      companyname: [String], 
      industry:[String], 
      jobtitle:[String], 
      startdate:[Date], 
      enddate:[Date], 
      roles:[String]}] 

、代わりに回収たびに挿入すると、それが既に存在する場合、そのドキュメントを更新しようとし、それに挿入してみてください。それを更新しながら各フィールドに押し込みます。

hereを参照してください。どのようにドキュメントにプッシュできますか。

は要するに、私はあなたがどのように$pushを使用するように表示することができます:

{ $push: {companyname:req.body.companyname, 
      industry:req.body.industry, 
      jobtitle:req.body.jobtitle, 
      startdate:req.body.prevstartdate, 
      enddate:req.body.prevenddate, 
      roles:req.body.roles} 
} 
+0

を私は 'VARのaddprofessionaldetails = { totalexperience以下のようなユーザープロの詳細を保存しています:req.body.totalexperience、 employementtype:REQ。 body.employementtype、 会社:{$プッシュ:{会社名:req.body.companyname、 業界:req.body.industry、 jobtitle:req.body.jobtitle、 STARTDATE:req.body.prevstartdate、 終了日: req.body.prevenddate、 役割:req.body.roles} \t \t} }; 新しいuserdetails({ \t \t \t professionaldetails:addprofessionaldetails、 \t \t \t})を保存(関数(ERR、cvdata) \t \t \t \t res.render( 'ダッシュボード');}); '' –

+0

新しいuserdetails。 ({ \t \t \t professionaldetails:addprofessionaldetails、 \t \t \t})関数(ERR、cvdata(保存){ \t \t \t。他 \t \t \t \t {res.render( 'ダッシュボード');}});(ERR){res.json(ERR)}場合\t ' \t \t \t \t submiting後、にNULL値がありますすべてのキー。すべてのキーが独自の配列を作成しています。 –

+0

新しいユーザーを作成するときは、通常作成してみてください。次回から、 '$ push'を使ってユーザを更新してください。それはでなければなりません: $ $ {$ company:{company:{companyname:req.body.companyname、industry:req.body.industry、jobtitle:req.body.jobtitle、startdate:req.body.prevstartdate、enddate:req。 body.prevenddate、roles:req.body。ロール}} ' –

関連する問題