ListField без дубликатов в Python mongoengine

Должно быть, я упускаю что-то действительно очевидное. Но я не могу найти способ представить набор с помощью mongoengine.

class Item(Document):
    name = StringField(required=True)
    description = StringField(max_length=50)
    parents = ListField(ReferenceField('self'))

i = Item.objects.get_or_create(name='test item')[0]

i2 = Item(name='parents1')
i2.save()
i3 = Item(name='parents3')
i3.save()
i.parents.append(i2)
i.parents.append(i2)
i.parents.append(i3)
i.save()

Приведенный выше код создаст дубликат записи для i2 в поле родителей i1. Как вы выражаете отношения с внешним ключом в mongoengine?

9
задан Tony 10 July 2012 в 03:57
поделиться