如何在 mongodb compass 中保存带有数组的 csv 文件?

How can I save the csv file with an array in mongodb compass?

问题图片:

我安装 csv 文件没有任何问题,但它将数组视为字符串。类别必须是一个数组。

示例代码

  {  "_id":{"$oid":"609196655b92b7164b2cb016"},
     "body":"test",
     "category":"["Aksiyon Oyunları","Beceri Oyunları"]",
     "date":"1617272388425",
      "gamelink":"ssdsd",
      "imglink":"deneme görseli",
      "status":"published", 
      "title":"BUNU YAPIN TREN!",
      "slug":"bunu-yapin-tren!" }
    const postSchema = new Schema({
        title: {
            type: String,
            required: true
        },
        category: {
            type: [String],
            required: true
        }
    });

module.exports = new model('posts', postSchema);

架构和此代码与节点 js

mongoose
    .connect(MONGO_URL)
    .then(() => console.log('DB Connected'))
    .catch(err => console.log("Fail to connect mongodb ", err));

    var ops = [];
    post_schema.find({ "category": { "$type": 2} }, function(err, arr) {
        arr.forEach(doc => {
            let str = doc.category+``
            str = str.split(',');
            const arr = str.map(e=>e.replace(/"|\[|\]|\/gm,'').toString())
            ops.push({
              "updateOne": {
                "filter": { "_id": doc._id },
                "update": { "$set": { "category": arr } }
              }
            });
            if ( ops.length > 0 ) {
                console.log("BULKWRITE")
              post_schema.bulkWrite(ops);
              ops = [];
            }      
          }); 
    })