Я пытаюсь создать уникальный индекс для поля массива в документе.Этот индекс должен работать так же, как когда у меня есть один документ с массивом, который содержит два элемента, тогда, если я хочу добавить новый документ, где поле массива, если содержат эти два элемента, то должно произойти дублирующая ошибка - но не в ситуации, когда только один из элементов являетсядублируется в другом массиве.Может быть, я покажу пример, который я имею в виду:
Сначала я создаю простой документ:
{
"name" : "Just a name",
"users" : [
"user1",
"user2"
]
}
И я хочу создать уникальный индекс для поля массива 'users'.В результате я хочу создать такие документы, как этот:
{
"name" : "Just a name",
"users" : [
"user1",
"user3"
]
}
или
{
"name" : "Just a name",
"users" : [
"user2",
"user5"
]
}
НО создать второй элемент невозможно:
{
"name" : "Just a name",
"users" : [
"user1",
"user2"
]
}
Или в обратном порядке:
{
"name" : "Just a name",
"users" : [
"user2",
"user1"
]
}
Но это невозможно, потому что Монго выдает ошибку, что «users1» дублируется.Можно ли создать уникальный индекс для всех элементов массива, как показано выше?