본문 바로가기
반응형

Python134

Django - Database Migration Command 요약 정리 Django는 풀스택 웹 프레임워크로 사용되어진다. 특히 기본 User Auth 기능을 제공하므로 별도의 User 관리 기능을 개발할 필요가 없다. 토큰 인증도 적용이 가능하며 추가로 필요한 컬럼등을 구성하거나 변경하는 것도 가능하므로 유용하게 활용할 수 있다. 그럼 어떤 명령을 사용할 수 있는지 Migration에 대해서 요약 정리해 본다. * 먼저 명령을 사용전에 마이그레이션을 지원하는 Database는 PostgreSQL, MySQL, SQLite를 지원한다. * 마이그레이션 명령을 사용하기 위해서는 settings.py에서 활성화를 먼저 해야 한다. makemigrations 마이그레이션을 진행하기 위한 사전 파일을 생성하는 명령이다. python3 manage.py makemigrations 명.. 2024. 3. 14.
Django - 메일 주소 표준화, 자동 교정하기 email 사용자 정보를 입력을 받는 경우 보통 개발자의 의도와 다르게 입력되는 경우가 많다. 특히 표준화된 포맷이 있는 경우 사용자의 입력을 믿기 보다는 교정을 해주는 것이 바람직하다. 여기에서는 django 에서 제공하는 기능으로 email address를 표준으로 자동 교정해주는 기능을 사용해보고자 한다. Email 주소의 표준은 도메인 주소를 소문자로 표기하는 것이라고 할 수 있겠다. 본기능은 UserManager에서 사용할 수 있으며, 다음과 같이 사용이 가능하다. """ Database Model """ from django.db import models from django.contrib.auth.models import BaseUserManager class UserManager(BaseUserMan.. 2024. 3. 14.
Python - Random 정수/소수점/리스트 이해 Random 함수를 통해 숫자 랜덤을 쉽게 구현할 수 있다. 특정 범위 혹은 리스트에서 임의의 값을 선택해야 할 때 유용하므로 자주 사용된다. 여기에서는 가장 많이 사용되는 정수와 소수점, 리스트에 대해 알아보고자 한다. 리스트 - choice >>> import random >>> my_list = ['a', 'b', 'c'] >>> random.choice(my_list) 'c' 정수 - randint >>> import random >>> random.randint(1,10) 10 >>> random.randint(1,10) 5 소수점 - unifrom >>> import random >>> random.uniform(0.2, 0.7) 0.38972597256511843 >>> >>> random... 2024. 3. 14.
Python - Session, HTTPAdapter 효율적인 ConnectionPool 관리 파이썬에서 HTTP Session을 통해 빠르게 연결을 지속 사용할 수 있다. 여기에서는 실제 사용중 발생했던 내용에 대해 정리하여, 추후 HTTP Connection 이해를 하는데 도움이 되고자 한다. Session TCP 연결시 본격적으로 데이터를 요청하기전에 네트워크를 연결하는 작업을 진행하게 된다. 이를 TCP 3-Way Handshake 라고 하며, 매 데이터를 요청할 때 마다 새로 연결 작업을 한다는 것은 데이터 처리에 그만큼 시간이 더 걸리게된다. 이러한 부분을 개선해서 동작할 수 있는 구조가 최초 연결한 Session을 만든이후 만든 세션을 재사용하여 요청을 처리하는 구조이다. 이는 보통 HTTP Keep-alive 와 같은 구조로 Python 코드로는 다음과 같이 이용할 수 있다. imp.. 2024. 3. 14.
Python - 왜 좋을까?, 해야 하는 이유 Python 현재 2022년 직업 구인 공고 기준으로 소프트웨어 언어로 1위를 달리고 있다. 필자 역시 현재 Python을 이용하여 개발을 진행하고 있는데, Python이 왜 좋은지 간단히 정리해 본다. 1. 웹 개발 웹 언어 부분에 대해서 Python을 이용할 경우 다양한 프레임 워크를 제공하고 있어서 용도에 알맞게 개발을 용이하게 진행할 수 있다. 가장 가볍게 개발할 수 있는 Flask 부터 REST API 를 쉽게 개발 할 수 있는 FastAPI, Full-Stack 기반으로 프론트를 포함한 MVC 기반의 개발을 지원해주는 Django까지 본인의 환경에 맞춰서 선택한다면 적은 코드로도 휼륭한 결과를 만들 수 있을 것이다. 성능적인 부분 역시 상당한 부분 과거보다 개선되어 문제없이 사용이 가능하다. .. 2024. 3. 14.
VSCode - Python 라이브러리 자동 완성 안될 때 Django에서 자동완성이 되지 않는 상황에서 어떻게 해결할 수 있을까 정리해본다. 보통 이런 상황은 가상 환경이거나, Docker 환경등에서 발생할 가능성이 높다. 이유는 현재 VS Code에서 바라보는 Python 실행 환경이 django 라이브러리를 인식할 수 없는 상태이다. 즉 다중 환경으로 개발을 하는데 현재 VSCode의 환경에서는 사용이 불가능 하다는 얘기이다. 따라서 해결 방법으로는 2가지가 있다. 1. 현재 환경에 Django 환경과 동일하게 라이브러리를 설치해준다. 2. Django 를 개발하는 환경의 Python 경로를 입력한다. 첫번째 방법은 개발 환경마다 따로 구성할 필요가 없도록 구성하여 개발 편의성은 있지만, 라이브러리의 기능적 문제나 환경 문제등에 민감하지 않기 때문에 문제가.. 2024. 3. 14.
반응형