Python 48

body 안넣었을때 에러처리 | 에러메세지 필드값 설정 | flake8 좋다..

오늘의 목표로는 회원가입시 request.data의 field 값이 비어있는 것이 아닌 body (= request.data) 자체가 없을 경우의 로직도 작성하고자 했다. service TestCase에서는 TypeError가 나왔고, view에 그에 따른 에러핸들링을 했으나 실행해보니 에러메세지가 TypeError의 메세지가 아닌 ValidationError가 나왔다. view가 아닌 service 로직에 적용을 하거나 raise를 사용해 예외처리를 해봤지만 결과가 같았다. body값이 없을 경우에는 request.data 가 빈값으로 밖에 나오질 않으니 if문을 사용해 response를 작성해주고, TypeError에 대한 에러핸들링 코드가 불필요해져서 삭제해주었다. TestCase 작성시에는 인자값..

PROJECTS 2022.12.10

http status code | DRF(Django Rest Framework)의 status 사용법

DRF(Django Rest Framework)의 status 사용법 1. 임포트하기 아래의 임포트 코드에 status 를 클릭 > fn(지구본)+F12 (맥) > 기본으로 제공되는 status.py로 이동됨 # 임포트는 필수! from rest_framework import status 2. status.py 확인하기 우리가 직접 안 만들어도 된다. 갖다 쓰면 된다. 왼쪽이 보여지는 화면이고, 확대하여 오른쪽 코드를 살펴 보자. 상태 코드를 쓰기 전에 언제 쓰이는지 확인을 해보고 자주 쓸 코드번호들은 알아두는게 좋다. 정보용 : 100번~199번 성공 : 200번~299번 리다이렉트 : 300번~399번 클라이언트 오류 : 400번~499번 서버 오류 : 500번~599번 3. 코드 작성하기 statu..

PROJECTS 2022.06.22

Django 스타벅스 클론코딩을 위한 모델 재설계 !

☕️ Github https://github.com/nicesugi/starbucks.git 👋 최신 관련글 2022.06.06 - [프로젝트/My Project] - Django 스타벅스 버전3 | 코드 간결화와 checkbox 중복선택으로 음료를 볼 수 있음 Django 스타벅스 버전3 | 코드 간결화와 checkbox 중복선택으로 음료를 볼 수 있음 ☕️ Github https://github.com/nicesugi/starbucks.git 원래.. 타임어택 테스트 재시도만 해 볼 생각이었는데 점점 업그레이드를 합니다... 이번버전은 코드간결화와 checkbox 를 중복 선택하여 음료를 볼 수 있 nicesugi.tistory.com 더보기 2022.06.06 - [프로젝트/My Project] -..

PROJECTS 2022.06.17

Clear !! w3school Python Tutorial , Exercise, Quiz 🤩

기초가 너무 부족하다고 느껴서 Python 튜토리얼을 꼭 하고 공부해야겠다라고 느꼈었는데 차근차근 튜토리얼 본 이후에 문제 풀기로 넘어가도 좋고 아니면 문제를 먼저 풀어보고 모르는 문제 나오면 그 때마다 Go to PYTHON Tutorial 눌러서 보러 가도 좋을 것 같다. exercise 부분은 집중해서 하면, 1시간 내외로 끝내지 않을까 싶음(..제기준이긴함..) 무료이고 공신력있는 해외사이트이니, 파이썬 기초부분을 알고싶으시거나 부족한 부분을 알고싶다면 한번 진행해보시는 것도 좋을 것 같음 95문제 중에 dict , set, class, lambda 부분에서 멈칫멈칫했어서 이 부분들을 튜토리얼 부분에서 공부하고 넘어간 후에 멈추었던 코드업 코딩테스트를 할 예정입니다 참고로 Reference 가 ..

STUDY/Python 2022.06.16

django.db.utils.OperationalError: no such table | ⭐️해결⭐️ | migrate해도 안돼요

상황 app -> post, user 두 개의 앱이 존재합니다. model -> post, user 각각 하나의 model을 갖고 있습니다. post 앱의 post 모델만 적용시켜줍니다. user앱의 user 모델은....... 안됩니다. 데이터 베이스도 지워보고 ~ 하라는 대로 아래 코드 2줄로 데이터베이스를 migrate하여 적용시켰는데 ~ python manage.py makemigrations python manage.py migrate 안된다! 왜 안되냐!! 👏 이 글을 보시면 될 듯합니다. 이 방법을 쓰고 같은 에러가 뜨는 걸 보지 않았기 때문에 포스팅합니다. 0. 오류발생 😱 django.db.utils.OperationalError: no such table: user 1. 우선, 삭제합니..

PROJECTS 2022.06.16

Mini Project | minicat | Django | 6월15일

🐱 Github https://github.com/tunEmvegnomb/minicat 🔽 관련글(minicat 첫 포스팅) https://nicesugi.tistory.com/153 영화 추천 서비스 프로젝트가 마무리 하면서 6월 1일에 했던 미니 프로젝트를 재진행하기로 했습니다 ! 프로젝트가 끝났지만 DRF 특강, Django 심화, 딥러닝 대비 등 각자 계획하는 일정이 있기 때문에 하루에 한시간씩이라도 진행해보자 ! 하였고 오늘 ZenHub를 통해 진행중인 일정과 끝난 일정에 대해 얘기를 나눴습니다. 신문물을 접해서 너무 신기하고 편리해서 다음 프로젝트 때도 유용하게 쓸 듯 ☺️ 몇 일 지나서 다시 보니 코드에 빈틈이 너무 많더라구요. 전체적으로 수정을 한 뒤에 잘 작동되는 것을 확인 후에 main..

PROJECTS 2022.06.16

❓ 관계형 데이터 베이스에서 사용되는 KEY

테이블 또는 데이터베이스의 다른 모든 레코드에서 해당 레코드를 식별하는 고유한 데이터를 보유하는 레코드의 필드입니다. 계정 번호, 제품 코드 및 고객 이름은 일반적인 키 필드입니다. 식별자로서 각 키 값은 각 레코드에서 고유해야 합니다. Primary Key 기본키 : null 값을 가질 수 없으며 동일한 값이 중복될 수 없다. 유일성과 최소성을 만족해야함 속성이 null 값이 올 수 없음 무조건 하나만 만들 수 있음 기본 키는 테이블의 모든 레코드를 고유하게 식별할 수 있는 테이블의 열입니다. 기본 키는 일종의 후보 키입니다. 각 데이터 행에 대해 고유한 값을 포함해야 합니다. null 값을 포함할 수 없습니다. Alternate Key 대체키 : 후보키가 둘 이상일 경우, 기본키를 제외한 키 대체 키..

STUDY/Python 2022.06.15

❓ mutable과 immutable 특성과 차이점

'mutable' 수정이 가능한 객체로 [ list, dict, Set ] 포함된다. 'immutable' 수정이 불가능한 객체로 [ int, float, bool, str, tuple ] 포함된다. y = x , z = x 부분에서 같은 주소를 가리키게 되어 둘의 값은 동일해진다. `[:]나 deepcopy` 를 사용하면 같은 객체를 공유하지 않는 것이 가능하다. # mutable : list x = [1,2] y = x z = x[:] y.append(3) print(f'{x} : {id(x)}') # [1, 2, 3] 4315180032 print(f'{y} : {id(y)}') # [1, 2, 3] 4315180032 print(f'{z} : {id(z)}') # [1, 2] 4316070784

STUDY/Python 2022.06.15

Team Project 4 | 📽 KPT | 영화 추천 시스템

🎞 Github https://github.com/nicesugi/2JYK-Watch_a_movie_N.11.git 🎞 튜터님들 피드백 양봉현 튜터 if 문 중첩; 게시물 작성에 if문이 3개 중첩되어 있어 코드흐름 파악이 좀 힘들었습니다. 분기에 대한 고민을 해보시고 리팩토링해보셨으면 좋겠습니다! 불필요한 print문 삭제해주시면 더욱 깔끔한 코드가 될 것 같습니다. __gt, aggregate 등 조금 사용에 난도가 있는 내용 잘 사용하셨습니다. DB 조회 시 해당내용이 있는지 파악할 때 objects.all()보다는 exists와 같은 메소드를 사용하셔서 체크해보시는 방법으로 변경해보시는 것이 좋을 것 같습니다. settings.py 내 INSTALLED_APPS에 작성 app은 최하단에 작성하는 ..

PROJECTS 2022.06.14
반응형