목록웹프로그래밍 (163)

수학과의 좌충우돌 프로그래밍

[Django] ORM Cookbook, 항목을 생성·갱신·삭제하는 방법

해당 포스팅은 Django ORM CookBook 을 공부하며 새로 알게된 사실이나 더 나아가 추가적으로 같이 알면 좋을 내용을 정리하고 있습니다. 1. 여러 개의 행을 한 번에 생성하기 여러 개의 데이터를 저장하기 위해서 create() 함수를 여러 번 쓰는 것은 비효율적입니다. DB와 연결 후 저장을 하고 연결을 끊게 되는데 쿼리가 여러 개면 이 과정을 무의미하게 반복됩니다. 따라서 저장할 데이터가 많을 경우 한 번에 저장하는게 좋습니다. Django에서는 bulk_create 를 제공해줍니다. 이 함수는 아직 저장되지 않은 객체를 담은 리스트를 인자로 받습니다. categories = [Category(name='a'), Category(name='b')] category = Category.obj..

웹프로그래밍/Django 2020. 8. 27. 19:39
[Django] ORM Cookbook, 정보를 조회하고 필요한 항목을 선별하는 방법(2)

해당 포스팅은 Django ORM CookBook 을 공부하며 새로 알게된 사실이나 더 나아가 추가적으로 같이 알면 좋을 내용을 정리하고 있습니다. 10. JOIN SQL에서는 JOIN문을 이용해 동일한 값을 가진 열을 기준으로 두 테이블을 결합할 수 있습니다. django에서도 JOIN을 할 수 있는 방법이 존재합니다. select_related 모든 Post를 가져오는 간단한 쿼리를 살펴봅시다. post_all = Post.objects.all() 이에 대한 SQL 질의문입니다. 놀랍게도 Post에 대한 질의문과 Post와 OneToOne으로 연결되어 있는 User에 대한 질의가 함께 이루어집니다. Post가 N개 있다면 각 Post에 해당하는 User를 조회하기 위해 N번의 추가적인 질의가 이루어집..

웹프로그래밍/Django 2020. 8. 27. 19:34
[Django] Logging 설정 및 SQL 쿼리 확인

log 란? 로그란 운영체제나 다른 소프트웨어가 실행 중에 발생하는 이벤트나 각기 다른 사용자의 통신 소프트웨어에 발생하는 모든 상황을 기록하는 데이터입니다. 개발, 마케팅, 기획, 디자인 등 여러 분야에서 로그데이터는 유용하게 사용될 수 있습니다. 특히 개발 영역에서는 해당 데이터를 통해 다음과 같은 활용이 가능합니다. 버그 수집 및 트래킹 롤백 및 대응 등에 대한 의사결정 판단의 근거로 활용 특정 기능에 대한 사용자 진단 Django를 통해 개발을 하면서도 이러한 로그를 남기고 추후에 활용할 수 있습니다. 이번 포스팅에서는 Django에서의 logging에 대해서 알아보도록 합시다. python logging django에서는 python 내장 logging 모듈을 사용합니다. 자세한 내용은 아래서 ..

웹프로그래밍/Django 2020. 8. 15. 17:30