2017-12-04 1 views
1

の配列で、私は、配列を入力し、サブ文書私/会社ルートIでプッシュ文書私の会社のスキーマ内マングースモデル

companySchema.js

PostedJobs : [{ 
     JobName : { type: String, required : true}, 
     JobType : { type: String, required : true}, 
     JobLocation : { type: String, required : true}, 
     JobSalay: { type: String, required : true} 
    }], 

を保持するある投稿仕事をしていますすべての会社は、そのユーザの会社を取得するためにモデルにCreatorエンティティを介して特定のユーザによって

を登録します私は

router.get('/', isLoggedIn , function(req, res, next) { 
    Company.find({'Creator': req.user.id}).then(function(companies) { 
     res.render('Company', { "Companies" : companies }); 
    }); 
}); 
を使用

会社を取得した後、私は会社名(ユニーク)

router.get('/:name' , isLoggedIn , function(req , res , next) { 
    var name = req.params.name; 
    Company.findOne({Name : name}).then(function(Company) { 
     res.render('dashboard',{ 
      "Company" : Company, 
      errors : [] 
     }); 
    }) 
}); 

をクリックする上で特定の企業ページを訪問したいと思う今、私は私のreq.bodyが構成されて としてPOSTルートからこの特定の企業に求人情報を掲載したいです私は今、私はKNていない配列

POSTルート

router.post('/:name' , isLoggedIn , function(req , res , next) { 
    var JobName = req.body.JobName; 
    var JobType = req.body.JobType; 
    var JobLocation = req.body.JobLocation; 
    var Salary = req.body.Salary; 
    //push this job to that specific comapny 
}); 

答えて

1

に、このドキュメントをプッシュする必要がありますどのように特定の変数に割り当てられているのJobName、JOBTYPE、JobLocationとJobSalaryのあなたの会社のスキーマはありますが、PostedJobsを会社に追加する場合は、その中に配列フィールドを定義する必要があります。

router.post('/:name' , isLoggedIn , function(req , res , next) { 
    var JobName = req.body.JobName; 
    var JobType = req.body.JobType; 
    var JobLocation = req.body.JobLocation; 
    var Salary = req.body.Salary; 
    //push this job to that specific comapny 
    // create the postedJob object 
    var postedJob = {JobName : JobName, JobType : JobType, JobLocation : JobLocation, JobSalay:Salary}; 
    // find the company in DB and add the postedJob to its array of postedJobs 
    var name = req.params.name; 
    Company.findOne({Name : name}).then(function(Company) { 
     company.postedJobs.push(postedJob); 
     company.save(); 
    }); 
}); 
+0

iが –

+0

PostedJobsあるタイプのアレイのpostedJobsた:[{ のJobName:{タイプ:文字列、必須:真}、 JOBTYPE:{タイプ:文字列は、必要:真}、 JobLocation:{タイプ:String、required:true}、 JobSalay:{type:String、required:true} }]、 –

+1

ありがとうございます –

関連する問題