Как установить валидации схемы Mongoose в поле массива - PullRequest
0 голосов
/ 16 октября 2018

В последние несколько дней у меня была проблема с проверкой схемы Мангуста.Потому что, когда я помещаю данные в массив reviews , он не показывает никакой ошибки, когда я помещаю дубликат в массив.Теперь я хочу установить валидацию в поле массива обзора, в котором поле name будет уникальным.См. Схему ниже.

var subSchema = mongoose.Schema({
    _id:String,
    name:{ type: String, unique:true},
    comment: String,
    stars: Number,
    date: String
},{ _id : true, index: true });

var NoteSchema = mongoose.Schema({
        title : { type: String, unique:true},
        slogan : String,
        description : String,
        stars : Number,
        category : String,
        img_url : String,
        price : Number,
        reviews: [subSchema]
}, {
    timestamps: true
});

И данные выглядят следующим образом:

{
    "reviews": [
      {
        "_id": "0",
        "name": "Rahim",
        "comment": "Rahim is a good writer",
        "stars": 5,
        "date": "16-10-2018"
      },
      {
        "_id": "1",
        "name": "Rahim",
        "comment": "Rahim is a good writer and",
        "stars": 5,
        "date": "16-10-2018"
      },
      {
        "_id": "2",
        "name": "Karim",
        "comment": "Karim is a good writer...",
        "stars": 5,
        "date": "16-10-2018"
      }
    ],
    "title": "Hello21",
    "slogan": "this is slogan2",
    "description": "This is description",
    "stars": 3.4,
    "category": "Story",
    "img_url": "img_url",
    "price": 220,
    "createdAt": "2018-10-08T08:24:29.528Z",
    "updatedAt": "2018-10-16T05:36:03.649Z",
    "__v": 0
  }

Я хочу предотвратить повторяющиеся записи в поле массива reviews .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...