Django에서 모델의 레코드 삭제
Django는 풀 스택 애플리케이션을 매우 빠르게 빌드 할 수있는 다목적 프레임 워크입니다. Django는 모든 웹 애플리케이션과 관련된 대부분의 복잡하고 핵심 작업을 효율적으로 처리하므로 개발자가 처음부터 작성할 필요가 없습니다.
다행히 Django는 데이터베이스를 매력적으로 처리하고 데이터베이스와 상호 작용하는 것이 정말 간단합니다. 원시 SQL 쿼리는 Django로 작성할 수 있지만 Python을 사용하여 데이터베이스 및 테이블과 상호 작용할 수 있습니다. Python을 사용하여 데이터베이스에 대해 CRUD 작업을 매우 빠르게 수행 할 수 있습니다.
이 기사에서는 CRUD 작업 삭제 기능을 소개하고 Django에서 모델의 레코드를 삭제하는 방법을 보여줍니다.
Django에서delete()
메소드를 사용하여 모델의 레코드 삭제
Django의 모든 모델 개체 또는 인스턴스에는 해당 레코드를 삭제하는 데 사용할 수있는delete()
메서드가 있습니다. 이제이delete()
메소드를 사용하여 단일 레코드와 여러 레코드를 삭제할 수도 있습니다.
단일 레코드를 삭제하려면 다음 코드를 사용합니다.
record = ModelName.objects.get(id=25)
record.delete()
get()
메소드는id
가 25 인 레코드를 가져온 다음 삭제합니다. 그러나 레코드를 찾을 수 없으면 예외가 발생합니다. 이를 방지하기 위해 다음과 같이try...except
블록을 사용할 수 있습니다.
try:
record = ModelName.objects.get(id=25)
record.delete()
print("Record deleted successfully!")
except:
print("Record doesn't exists")
모든 레코드를 삭제해야하는 경우 모든 레코드를 포함하는QuerySet
에서이delete()
함수를 호출 할 수 있습니다. 아래 코드는 동일한 작업을 수행합니다.
records = ModelName.objects.all()
records.delete()
위에서 언급했듯이QuerySet
에서이delete()
함수를 호출 할 수 있습니다. 이는 일부 필터링 된 레코드의QuerySet
에서도이 함수를 호출 할 수 있음을 의미합니다. 동일한 출력에 대해서는 다음 코드를 참조하십시오.
records = ModelName.objects.filter(firstName="Vaibhav")
records.delete()