MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Zapisywanie tablicy ('tagów') w MongoDB za pomocą Mongoose

Jeśli naprawdę chcesz, aby tablica "tags" miała pole nazwy i wygenerowany _id następnie zdefiniuj inny schemat i umieść go:

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]
});

Następnie manipuluj danymi wejściowymi do właściwej struktury, zanim utworzysz Post obiekt:

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

var post = new Post(req.body);

Lub po prostu zostaw to jako tablicę zwykłych ciągów:

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

I nie martw się o mapowanie właściwości obiektu:

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



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Pymongo BSON Binary zapisywać i pobierać?

  2. Mechanizm uwierzytelniania SCRAM-SHA-1 nie jest obsługiwany

  3. Zapytanie MongoDB z kryteriami długości

  4. mongodb c# jak pracować z dokumentem BSON

  5. Jak używać mongodump do 1 kolekcji