하나의 필드가 하나의 키나 인덱스로 작용이 되면 unique=True 이렇게 편하게 주면 되는데,
2개의 필드가 합쳐야 유일한 키가 되는 경우는 어떻게 하나?
당연히 선지자들은 많이 해본 경험으로 이런 함수를 만들어 두었네
unique_with='같이고려해야하는필드명'
이렇게 선언부에 넣어두면 된다는 말씀. 원본 문서에서 가져옴
https://docs.mongoengine.org/guide/defining-documents.html#uniqueness-constraints
2.3.3.6. Uniqueness constraints
MongoEngine allows you to specify that a field should be unique across a collection by providing unique=True to a Field‘s constructor. If you try to save a document that has the same value for a unique field as a document that is already in the database, a NotUniqueError will be raised. You may also specify multi-field uniqueness constraints by using unique_with, which may be either a single field name, or a list or tuple of field names:
class User(Document):
username = StringField(unique=True)
first_name = StringField()
last_name = StringField(unique_with='first_name')
2개 이상의 경우는? 에이..생각안할래...
BJ.
Maxim Kovalev 님의 사진, 출처: Pexels
'IT > DB' 카테고리의 다른 글
DB ERD 그리기 무료 사이트 대박 DBdiagram.io (0) | 2023.07.04 |
---|---|
MongoDB 기본적인 내용 이해 - 글 소개 (0) | 2021.07.22 |
MongoDB - 이미지 파일 같은 바이너리 데이터 입력하기 (0) | 2021.07.15 |
우분투 18.04 LTS MongoDB 설치 및 설정, 관리자 계정 추가 정리본 (0) | 2021.07.08 |
MongoDB 연결된 상태 보기 (0) | 2021.07.01 |