postgreSQL in Django

postgreSQL in Django

#1. Django 에서 새로운 Constraint 추가하는 방법

models.py에서 DB 스키마를 정의한다.

Meta 클래스 내에서 constraints를 추가해준다.

#2. Conflict 발생시 대처방법

Django에서 새로운 DB를 만들 때 제약조건에 의한

CONFLICT가 발생하는 경우가 있다. 이럴 경우를

미리 대비해서 DB를 생성해야 한다.

그렇지 않은 경우 IntegrityError가 발생한다.

방법1)

가볍게 try ~ except 문을 사용하는 것이다.

try: Person.objects.create(------) except Exception as e: continue

방법2)

DB를 생성하는 코드에서 on_conflict 속성을

추가하여 CONFLICT가 발생했을 때에

행동을 추가해준다.

on_conflict('first_name', ConflictAction.NOTHING)

해당 속성을 사용하기 위해서는 psqlextra 모듈을

설치 및 셋팅해주어야 한다.

from http://incomeplus.tistory.com/203 by ccl(A) rewrite - 2021-10-25 01:01:04