본문 바로가기

분류 전체보기

미니 요기요 프로젝트(2) - 레스토랑, 레스토랑 디테일 기획 의도, 화면, 코드, 테스트 코드, 어려웠던 점, 해결방법, 느낀점 등을 설명한다. 1. 레스토랑 기획 의도 특정 카테고리를 클릭하면 그에 맞는 레스토랑 리스트가 출력되는 것이 목표 화면 코드 카테고리를 클릭하면 'category//restaurant/'가 호출되고 레스토랑 리스트 화면이 나온다. 저 경로로 요청이 들어오면 템플릿 렌더링을 할 때 category_id를 html 파일에 넘겨준다. 그 html 파일에선 ajax로 api 호출을 하는데 "/api/category/" + {{ category_id }} +"/restaurant/" 이렇게 호출한다. 그러면 api 디렉토리의 urls.py에선 패턴을 찾고 일치하는 게 있으면 views.RestaurantListAPIView.as_view()..
미니 요기요 프로젝트(1) - 카테고리 기획 의도, 화면, 코드, 테스트 코드, 어려웠던 점, 해결방법, 느낀점 등을 설명한다. 1. 카테고리 기획 의도 요기요 카테고리랑 비스무리하게 만드는 것이 목표 화면 코드 config 디렉토리의 urls.py에 path('home/', home, name='home'),가 있다. 이 경로로 접속하면 홈 화면이 켜지고 path('api/category/', include('category.api.urls')), 이 경로가 호출된다. 카테고리 api 디렉토리에는 역시 urls.py가 있고 이 안에는 위 경로가 호출될 때 호출되는 클래스 뷰가 있다. 클래스 기반 뷰를 함수로 호출한다. views.CategoryListAPIView.as_view(), 이렇게. class CategoryListAPIView(V..
미니 요기요 프로젝트(0) - 개요 회사의 서비스의 기본 틀을 만든 후 고객들이 필요로 하는 그리고 인턴끼리 이 기능이 있으면 좋겠다 싶은 것들을 만들었다. 장고 2.1, 파이썬 3.6.5를 사용했다. DB는 postgreSQL을 사용했다. 내가 만든 부분은 홈화면에 나오는 카테고리, 레스토랑들, 레스토랑 디테일, 메뉴 리스트, 메뉴 디테일, 날씨별 잘팔린 메뉴, 구독기능, 구독중인 레스토랑, 요식이 이벤트 리스트, 메뉴 타임라인, 사용가능 or 사용된 요식이이다. secret key들은 환경변수에 경로를 추가한 뒤 경로상의 .json 파일 안에 json 형식으로 작성해놨다. github에 올라가면 key가 노출되기 때문이다. 소스코드 구조는 디렉토리 내에 앱들이 나열되어 있고 앱들과 함께 manage.py 파일, 설정 디렉토리, 이미지 ..
2019년 단기 목표 인턴 후 정규직 전환이 안돼서 계획을 좀 세워야 한다. 추운 겨울이 되기 전에 이 중 절반은 달성하면 좋겠는데 사실 끊임 없이 공부하고 자기계발해야 하기 때문에 평생 가져가야 할 목표이기도 하다. 1. 인턴 프로젝트 코드 설명, 이미지, 느낀점, 어려웠던 점, 해결방법 정리해서 블로그에 올리기, 포트폴리오 작성 2. Django 사용하는 회사 발굴 후 백엔드 자소서 작성 3. 역량을 키울 수 있는 좋은 문화와 좋은 개발자, 좋은 사람들이 있는 회사에 취업해서 백엔드 개발자로써의 역량 키우고 회사에 기여하면서 성장하기 4. OS, 자료구조(KOCW 강의 및 구글링), 알고리즘(Codewars), 네트워크(KOCW 및 도서관 도서 대여), DB(RDB, NoSQL 등) 공부 후 블로그 정리 5. 단골 질문 ..
파이썬 질문 http://net-informations.com/python/iq/default.htm Python Interview Questions and Answers net-informations.com
.pyc란 무엇인가? 파이썬은 인터프리터 언어라고 알려져있다. 파이썬을 실행하면 나오는 .pyc는 무엇일까? python 언어를 컴파일해 놓은 파일인데 이 안에는 원시 파이썬 코드가 컴파일된 byte 코드가 존재한다. 인터프리터 언어인데 byte 코드로 컴파일을 했다니 좀 이상하다. 파이썬 가상 머신(virtual machine)은 컴파일러와 인터프리터가 있다. 인터프리터는 .py 파일에 작성된 원시 파이썬 코드를 곧바로 해석할 수 없다. 그렇기 때문에 우선 원시 코드는 byte 코드로 변환되어야 한다. 이 과정에서 .pyc 파일이 생성되고 그 안에 byte 코드가 작성된다. .pyc 파일이 이미 생성되어 있으면 다시 컴파일할 필요 없이 바로 시스템에 byte 코드를 적재한다. .pyc 파일은 캐시처럼 취급된다. 미리 byt..
쿠키와 세션 그리고 OAuth 쿠키와 세션을 왜 사용할까? 서버와 클라이언트가 통신을 할 때마다 서버는 클라이언트가 누구인지 알아야 한다. HTTP는 connectionless, stateless라는 특성이 있다. connectionless는 말 그대로 비연결성인데 클라이언트 요청 후 서버가 응답을 하면 연결이 끊어진다. 자기 할 일이 끝나면 뒤도 안돌아본다. stateless는 비상태성이다. 상태 정보를 저장하지 않는다. 로그인되어 있는 사이트를 껐다가 켜면 다시 로그인을 해야 하는 경우가 예시다. 이런 특성들에 의해서 사용자는 매번 서버에 자신이 누군지 알려야하는 불편을 겪는다. 보완하기 위해 쿠키와 세션을 사용한다. 쿠키와 세션의 공통점은 요청하는 클라이언트가 누군지 인증할 때, 즉 서버라는 놈이 요청한 클라이언트가 누군지 확인..
파이참에서 DB 브라우저 켜기 유료인 전문가용 파이참에서는 DB 브라우저를 지원해줬다. 무료 교육용 파이참에서는 DB 브라우저가 없다.. settings -> plugins -> database navigator 검색 후 install, 파이참 재부팅 -> project탭 근처에 DB Browser가 생긴다.