Используйте переменный объект для обновления базы данных Mongoose - PullRequest
0 голосов
/ 11 октября 2018

У меня есть веб-сайт с двумя вариантами языка.Я использую CMS для изменения содержимого на сайте.Для некоторого контента я использую функцию обновления в Mongoose.Но мне нужно обновить контент для языка, который должен быть изменен.Таким образом, на основании скрытого ввода редактора, который может быть nl или en, объект должен обновляться на основе этого.Я использую Express и Mongoose.

Это функция обновления в Express:

postController.headerPost = function(req,res,header){
  var id = req.body.id;
  var locale = req.body.locale;
  var data = {
    header_col1 : req.body.main_header_col1,
    header_col2 : req.body.main_header_col2
  };
  obj = {[locale]: data };
  console.log(obj);
  header.update({_id: id}, {$set:{obj}}, (err, result) => {
   if(err) {
     throw err;
   }
 });
};

языковой стандарт переменной - nl или en.Я пытался создать объект и обновить его как один раз в модели Mongoose, но это, похоже, не работает

Это схема Mongoose:

var mongoose = require('mongoose');

    var Schema = mongoose.Schema;

    var news_header = new mongoose.Schema({
      nl : {
        header_col1: String,
        header_col2: String
      },
      en : {
        header_col1: String,
        header_col2: String
      }
    }, {collection: 'news_header'});

    module.exports = mongoose.model("news_header", news_header);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...