[Python] 권장사항 python pep : python 권장사항( pep8 : 파이썬을 위한 스타일 가이드 ) python은 코드가 한줄당 79자를 넘기지 않는것을 권장함 https://www.python.org/dev/peps/pep-0008/https://www.python.org/dev/peps/pep-0008/ Python & Django 2021.09.02
[Python] pool_recycle + wait_timeout Daemon 이 서버의 뒷편에서 계속 돌아가는 경우 SQLAlchemy에서는 쿼리요청이 없더라도 일정주기로 쿼리문을 날려줘서 갱신을 해줘야 connection이 끊기지 않는다. 1. db.py 파일 작성 # pool_recycle은 해당 시간 이후에 connection을 재사용하겠다는 뜻 pool_recycle = 60 * 60 * 2 # 7200초 이후에 connection 재사용 # DB connection이 끊기지 않게 쿼리문 날림 (아래 보기) session.execute('SELECT now()').scalar() ※ 주의할점 : 서버 배포후에 확인 해봐야 할것 : 서버쪽의 vi /etc/my.cnf의 wait_timeout 의 초(seconds)가 pool_recycle 보다 작으면 'Lost.. Python & Django 2021.09.01
[Django] Django Kakao Login API - 카카오 로그인 진행 과정 카카오 개발자 애플리케이션 등록 + 카카오 로그인 활성화 아래 링크에서 내 애플리케이션을 하나 생성하면 앱 키를 생성 받을 수 있음 앱 키 생성 확인 후 카카오 로그인 활성화 + Redirect URI를 추가해 줘야함 링크 : https://developers.kakao.com/ Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com Code class KakaoSignInView(View): """ 인증 코드 받아오기 """ def get(self, request): current_site = get_current_site.. Python & Django 2021.08.25
[Django] Django url tag( parameter ) 만약 html 에서 url을 통해 views로 parameter를 전달하고 싶다면? 버튼 app_name = 'test' path('test_send///', views.TestView.as_view(), name='test_send'), class TestView(generic.View): def get(self, request, type, cid): # print로 잘 받아오는지 확인 print(type, ' / ', cid) return type Python & Django 2021.08.25
[Django] Django 비밀번호 암호화(Argon2 이용) 1. 라이브러리 설치 : 차세대 해싱 알고리즘인 Argon2를 이용하여 암호화를 진행 할 예정 pip install argon2-cffi 2. 비밀번호 암호화 # PasswordHasher import 해줘야함 from argon2 import PasswordHasher # 해시 함수 사용 user = User( user_id = user_id, user_pw = PasswordHasher().hash(user_pw), ) user.save() 3. 비밀번호 일치 확인 # 일치하면 True, 다르면 VerifyMismatchError -> 예외처리 필수 PasswordHasher().verify(암호화된 비밀번호, 입력받은 비밀번호) ※ 이때 비밀번호가 일치하지 않으면 VerifyMismatchError.. Python & Django 2021.08.25
[Django] Django Setting Python의 많은 프레임 워크 중에서 Flask와 Pyramid 가 아닌 Django를 사용 하는 이유는?? Flask와 pyramid는 아주 가벼운 프레임 워크로 미니멀하게 꼭 필요한 정도의 기능만 제공한다. 간단한 것들은 Django 보다 빨리 만들수는 있지만 규모가 커질수록 많은 기능들을 차곡차곡 구현해야 하기 때문에 오히려 더 오래걸린다. Django는 그에 비해 거대한 프레임 워크로 많은 기능(관리자 페이지, 사용자 인증 등)을 포함하고 있어 개발 할 때 손이 좀 덜 간다. Django는 많은 기능이 필요로 하는 프로젝트를 진행할때 적합하다. 적은 기능들을 빠르게 구현하는건 Flask, Pyramid 쪽이 나을 수도 있음. tool 은 py.. Python & Django 2021.08.25