sql >> Database teknologi >  >> NoSQL >> MongoDB

Gem en række (af 'tags') til MongoDB ved hjælp af Mongoose

Hvis du virkelig ønsker, at dit "tags"-array skal have et navnefelt og et genereret _id feltet definerer derefter et andet skema og indlejrer det:

var tagSchema = mongoose.Schema({
    name: String
});

var postSchema = mongoose.Schema({
  title: String,
  permalink: String,
  content: String,
  author: {
    id: String,
    name: String,
  },
  postDate: {
    type: Date,
    default: Date.now
  },
  tags: [tagSchema]
});

Manipuler derefter input til den korrekte struktur, før du opretter Post objekt:

req.body.tags = req.body.tags.replace(/\s/''/g).split(",").map(function(tag) {
    return { "name": tag };
});

var post = new Post(req.body);

Eller bare lad det være en række almindelige strenge:

var postSchema = mongoose.Schema({
  title: String,
  permalink: String,
  content: String,
  author: {
    id: String,
    name: String,
  },
  postDate: {
    type: Date,
    default: Date.now
  },
  tags: [String]
});

Og du skal ikke bekymre dig om at kortlægge objektegenskaben:

req.body.tags = req.body.tags.replace(/\s/''/g).split(",");
var post = new Post(req.body);



  1. I Mongo nogen måde at gøre kontrol og indstilling som atomar drift?

  2. Afinstaller mongoDB fra ubuntu

  3. Mongodb\BSON\Regex Php:Udfør Like Match

  4. Sådan matcher du en streng bestående af specialtegn som bindestreg og mellemrum