장고 모델을 만들다 보면, unique 필드로 키를 등록해서 사용하곤 한다. 그런데 중복은 되는데 각 사용자별 중복은 허용하지 않도록 지정하기 위해서는 2개 이상의 필드를 묶어서 unique 하게 동작하도록 해야 한다.
이때 사용하는 구문은 다음과 같다. UniqueConstraint
https://stackoverflow.com/questions/2881043/django-create-a-unique-database-constraint-for-2-or-more-fields-together
Django 2.2 introduced UniqueConstraint and the note in the official documentation on this topic suggests that unique_together might be deprecated in future. See deprecation note here.
You can add UniqueConstraint to the Meta.constraints option of your model class like so:
class Meta:
constraints = [
models.UniqueConstraint(fields=['poll', 'user_id'], name="user-polled")
]
세상에는 알아야 쓸수 있다 좀 더 매진하자
국내 글을 찾다 보면 아래 글도 참고할 만 하다.
Julia Filirovska 님의 사진, 출처: Pexels