Nếu bạn thực sự muốn mảng "thẻ" của mình có trường tên và _id
được tạo sau đó xác định một lược đồ khác và nhúng nó vào:
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]
});
Sau đó, thao tác đầu vào cho đúng cấu trúc trước khi bạn tạo Post
đối tượng:
req.body.tags = req.body.tags.replace(/\s/''/g).split(",").map(function(tag) {
return { "name": tag };
});
var post = new Post(req.body);
Hoặc chỉ để nó dưới dạng một mảng các chuỗi đơn giản:
var postSchema = mongoose.Schema({
title: String,
permalink: String,
content: String,
author: {
id: String,
name: String,
},
postDate: {
type: Date,
default: Date.now
},
tags: [String]
});
Và đừng lo lắng về việc ánh xạ thuộc tính đối tượng:
req.body.tags = req.body.tags.replace(/\s/''/g).split(",");
var post = new Post(req.body);