Как настроить уникальный ключ с несколькими полями в SimpleSchema

Я использую SimpleSchema в приложении метеора. Теперь мне нужно определить уникальный ключ с несколькими полями. В коллекции у меня есть поле типа

servingDate, vanId, timeSlot

Мне нужно сделать уникальное с этими тремя полями. Есть ли какие-то возможности сделать в SimpleSchema??


person Zahed    schedule 13.12.2015    source источник


Ответы (1)


Вы не можете сделать это с помощью простой конфигурации схемы. Ваш единственный правильный вариант:

if (Meteor.isServer) {
  MyCollection._ensureIndex(
    {servingDate: 1, vanId: 1, timeSlot: 1},
    { unique: true }
  );
}
person Serkan Durusoy    schedule 13.12.2015
comment
Код работает нормально, а повторяющиеся ключи вызывают ошибку проверки при сохранении. Как настроить пользовательское сообщение об ошибке проверки? - person Saeed D.; 18.05.2017