일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 탐욕 알고리즘
- 알고리즘
- 유튜브
- 추천 영상
- nocookie
- docker-compose
- 단축어
- 그리디 알고리즘
- selenium
- DB
- python
- 코딩
- flask
- Google Drive
- 깃허브
- List
- 링크
- 바로학교
- 리스트
- Django
- 구글 드라이브
- 충북
- 장고
- gpu 병렬처리
- 파이썬
- G-Suite
- pymongo
- MongoDB
- 아이폰
- venv
- Today
- Total
SSAMKO의 개발 이야기
[flask]DB ORM을 위한 라이브러리 sqlacodgen, pymongo 본문
python으로 손쉽게 API서버를 만들기 위해서 주로 flask를 많이 사용합니다.
좀 더 큰 규모의 백엔드 서버를 위해서는 당연 django를 사용해야겠지만,
가벼운 API 몇 개만 운영하고자 할 때는 flask처럼 간편한 framework가 없습니다.
flask를 API서버로 사용하면서 DB를 다룰때 주로 사용하는 두 라이브러리를 소개합니다.
flask-sqlacodegen과 flask-pymongo인데요. 둘 다, sqlacodegen과 pymongo를 fork하여 대부분의 사용법이 비슷하며 다만 웹 혹은 flask서버를 위한 몇가지 추가적인 기능들이 있습니다.
DB가 SQL이라면 flask-sqlacodegen을 사용하시면, django에서 DB ORM을 사용하는 것처럼 편하게 DB를 이용할 수 있습니다.
하지만, 역시 flask에 가장 알맞은 DB는 NoSQL DB인 mongoDB라고 생각합니다.
mongoDB는 query자체가 ORM으로 되어 있기 때문에 flask-pymongo를 통해 손쉽게 DB를 이용할 수 있습니다.
간단한 api서버 구축을 위한 프레임워크와 DB를 고민하고 계신다면,
flask와 mongoDB의 조합을 추천합니다.
pymongo vs flask-pymongo
이 두 라이브러리를 비교하자면, 일단 위에 언급했다시피 대부분의 기능은 동일합니다.
다만, pymongo에 find() 함수가 있다면, flask-pymongo에서는 find_or_404() 처럼 서버를 위한 함수들이 추가되어 있습니다.
이런 함수들은 try-except문을 사용하거나 따로 404page를 return하지 않아도 되기때문에 코드를 훨씬 빠르고 깔끔하게 짤 수 있습니다.
따라서, pymongo를 사용해도 서버 운영에는 문제가 없지만 더 빠르고 깔끔한 code를 위해서는 flask-pymongo의 사용을 추천합니다.
'Python' 카테고리의 다른 글
python 직접 작성한 module, package import 하기 (0) | 2021.01.08 |
---|---|
[파이썬]진행상황 표시하기 - 한 줄로 print하기 (0) | 2020.12.25 |
Django에서 socket-io[client] 사용하기 | Python (0) | 2020.06.28 |
api로 받은 정보 telegram으로 보내기 | python (0) | 2020.06.19 |
beautifulSoup 불가 페이지 selenium으로 크롤링하기 (0) | 2020.06.04 |