BackEnd

개발하면서는 DEBUG 값을 ture로 해서, 개발을 하다 오류가 발생하면 바로바로 알고 고칠 수 있었다. 하지만 배포시에는 DEBUG값을 false로 하여 로그가 기록되지도 않고, 화면는 에러 코드만 보여주며 그 마저도 사용자만 볼 수 있다.   .env를 통한 ADMIN 설정 로컬 개발 환경으로 이동하여 .env 파일에 아래 내용을 추가해준다.ADMINS='jongseoung BEAK ,name Exampe ' settings.py에서 아래의 내용을 추가해준다. AdminMailHandler를 위한 ADMINS/SERVER_EMAIL 설정 추가 · jong-seoung/course-django-complete-guide-v3@865528fjong-seoung committed Aug 7, 2024gi..
Nested Serializer 란?DRF에서 제공하는 기능으로, 관계형 데이터를 처리할 때 매우 유용하다. 이 기능을 이용하여 데이터의 중첩된 관계를 표현하고 관리할 수 있다. Nested Serializer 사용법코드를 보면 IngredientsSerializer, RecipeProcessSerializer, recipe_comments 세가지 직렬화가 BasicRecipeSerializer에 중첩되어 있는 것을 확인할 수 있다.like_count와 bookmark_count는 LikeBookmark를 상속받아 중첩시킨 부분이여서 설명에서 제외하였다. 주의 깊게 봐야 되는 부분이 create와 update 메서드 부분인데, nested serializer는 읽기 전용 필드 이기 때문에 따로 creat..
프로젝트를 진행하다보면, 특정 모델에 대한 권한을 제한하고 싶을 때가 있다. 이럴때 admin.ModelAdmin 클래스에서 제어할 수 있는 다양한 메서드를 제공한다.  Options아래의 내용은 options에 들어 있는 메서드들의 내용이다. has_add_permission사용자가 새 객체를 추라할 수 있는 권한이 있는지 확인한다. 기본적으로 사용자가 해당 모델에 대해 add 권한을 가지고 있는지 검사한다.def has_add_permission(self, request): opts = self.opts codename = get_permission_codename("add", opts) return request.user.has_perm("%s.%s" % (opts.app_label..
특정 User나 Group에 대해서 권한을 설정하고, Admin 페이지에서 권한별 UI를 띄워서 관리하기 위해 고려해 볼 수 있는 사항으로 Model Meta에 permissions를 설정하여 권한을 관리할 수 있다. 간단한 예시로, 유튜브를 보면 프리미엄에 가입한 유저는 광고가 뜨지않고, 그렇지 않은 유저는 광고가 뜨도록 설정하는 것도 권한과 관련이 있다. django에서 모델 메타 설정을 통해 권한을 관리하는 방법에 대한 내용이다. Django의 Meta 설정이란?permission 기능을 구현하기에 앞서 Django의 Meta 기능에 대해서 간략히 설명하자면, 모델의 동작을 커스터마이징하기 위해 사용되는 기능으로 데이터베이스의 테이블 명, 정렬 순서, 권한 등 다양한 설정을 포함할 수 있는 클래스이..
장고 개발을 하면서 여러 객체에 대한 데이터 베이스 업데이트를 진행해야 할 일이 있었다. 기존에는 for문을 이용하여 처리하였는데 대량의 데이터 처리를 효율적으로 처리할 수 있는 기능인 Bulk 연산에 대해서 알게 되었다. Bulk Operations 이란?Bulk 연산은 여러 개의 데이터 베이스 레코드를 한 번에 삽입, 업데이트, 삭제하는 작업을 의미한다. 이 기능을 사용하면 각각의 레코드에 대해 별도의 쿼리를 실행하는 것보다 훨씬 효율적으로 데이터를 처리하고 쿼리 성능을 높일 수 있다.기존에 for문을 이용하여 처리할 경우 개별적인 쿼리가 실행되는 반면 bulk는 적은 수의 쿼리로 실행이 되어 데이터 베이스 성능을 향상할 수 있고, 코드를 간결하게 유지할 수 있다는 장점이 있었다. 반대로, 하나의 쿼..
Jong_seoung
'BackEnd' 카테고리의 글 목록 (2 Page)