Tôi đang sử dụng mongoengine với bình. Tôi có một lớp db.Document được gọi là hồ sơ trong đó tôi muốn một trường được nullable và duy nhất, tôi hiểu cách để làm điều này là để làm cho một chỉ số của trường đó là cả hai thưa thớt = True và duy nhất = True, làm thế nào để tôi đi về việc này?cách tạo chỉ mục trong mongoengine là duy nhất = True và sparse = True
7
A
Trả lời
12
Bạn sẽ phải khai báo các chỉ số trong meta
định nghĩa, ví dụ:
class BlogPost(Document):
date = DateTimeField(db_field='addDate', default=datetime.now)
category = StringField()
tags = ListField(StringField())
meta = {
'indexes': [
{'fields': ['-date'], 'unique': True,
'sparse': True, 'types': False },
],
}
3
Trong trường hợp hạn chế duy nhất bạn có thể thiết lập nó với việc kê khai lĩnh vực như:
email = mongodb.EmailField(required=True, unique=True)
cảm ơn rất nhiều – Jay
hãy đánh dấu là đã trả lời! – Ross
xin lỗi, nhưng làm thế nào để bạn làm điều đó? Tôi mới ở đây, cảm ơn – Jay