Python 如何使引用字段的列表字段唯一?

Python 如何使引用字段的列表字段唯一?,python,mongodb,mongoengine,Python,Mongodb,Mongoengine,我试图使ReferenceField的ListField唯一,但我得到了一个唯一的错误,而我不应该这样做。为什么呢 class Training(Document): transactions = ListField(ReferenceField(Buy, reverse_delete_rule=PULL), default=list, unique=True) b = Buy() b.save() b1 = Buy() b1.save() b2 = Buy() b2.save()

我试图使
ReferenceField
ListField
唯一,但我得到了一个唯一的错误,而我不应该这样做。为什么呢

class Training(Document):

    transactions = ListField(ReferenceField(Buy, reverse_delete_rule=PULL), default=list, unique=True)

b = Buy()
b.save()
b1 = Buy()
b1.save()
b2 = Buy()
b2.save()

# both should save fine since the lists are different
Training(transactions=[b, b1]).save()

Training(transactions=[b, b2]).save()
NotUniqueer错误:尝试保存重复的唯一密钥(E11000重复密钥错误集合:test_db.training index:transactions_1 dup key:{:ObjectId('575D33ECEEFEE54280475FC1B'))