-
라라벨 delete, truncate, destroy 메서드백엔드/laravel 2024. 1. 19. 21:36
1. delete 메서드
- delete 메서드는 단일 모델 인스턴스를 삭제하는 간단한 방법입니다.
- 특정 모델 인스턴스를 찾아 삭제할 때 사용됩니다.
$post = Post::find($postId);
$result = $post->delete();
if ($result) {
echo "Post with ID {$postId} has been deleted.";
}2. truncate 메서드
- truncate 메서드는 테이블에서 모든 레코드를 삭제합니다.
- 이 메서드는 레코드 뿐만 아니라 자동 증가 ID도 0으로 재설정합니다.
Post::truncate(); // 모든 레코드 삭제 및 ID 재설정
3. destroy 메서드
- destroy 메서드는 테이블에서 여러 레코드를 삭제하는 데 사용됩니다.
- 대부분의 경우, 여러 레코드를 삭제하기 위해 사용되지만, 하나의 레코드를 삭제하는 데도 사용할 수 있습니다.
// 가장 최근의 포스트 중에서 ID가 1063과 1062인 레코드 삭제
$result = Post::destroy([1063, 1062]);
echo "Number of posts deleted: {$result}";destroy 메서드는 삭제된 포스트의 개수를 반환하며, delete 메서드는 삭제 성공 여부를 나타내는 true 또는 false를 반환합니다.
이 메서드들을 사용하는 실제 예시로, delete는 단일 모델을 삭제할 때, truncate는 테이블의 모든 레코드를 삭제할 때, 그리고 destroy는 여러 레코드를 삭제할 때 유용합니다.
'백엔드 > laravel' 카테고리의 다른 글
라라벨 소프트 삭제(soft deleting)된 레코드를 주기적으로 삭제하기 (0) 2024.01.20 라라벨 소프트 삭제(Soft Deleting) (0) 2024.01.20 라라벨 updateOrCreate 및 upsert 메서드 (0) 2024.01.19 라라벨 isDirty, isClean 및 wasChanged 메서드 (0) 2024.01.19 Query Builder paginate 메서 (0) 2024.01.15