본문 바로가기

전체 글

(351)
[Django rest Framework] get_object() get_object() 메서드는 무엇인가? : pk로 queryset을 필터링 하고, 필터링을 통해 queryset에서 pk에 맞는 object를 return 시켜주는 메서드이다. 비교 # DRF get_object() first = self.get_object() # Django ORM second = Second.objects.get(pk=pk) 위 두가지 예시의 코드들은 같은 역할을 한다고 생각하면 쉽다. get_object() # get_object 소스 코드 def get_object(self, queryset=None): """ Returns the object the view is displaying. By default this requires `self.queryset` and a `pk..
[Django rest Framework] Swagger 문서 자동화 ( drf-yasg ) Swagger REST API를 설계, 빌드, 문서화 및 사용하는데 도움이 되는 OpenAPI 사양을 중심으로 구축 된 오픈 소수 도구 세트입니다. Django 프레임워크에서는 drf-yasg 라이브러리를 이용하여 python 코드로 더욱 쉽게 문서 자동화가 가능하다. https://drf-yasg.readthedocs.io/en/stable/ drf-yasg — drf-yasg 1.20.1 documentation © Copyright 2018, Cristi V. Revision 1795ed15. drf-yasg.readthedocs.io https://github.com/axnsan12/drf-yasg/tree/master/testproj GitHub - axnsan12/drf-yasg: Automa..
[Django rest framework] TDD - Unit Test 먼저, 사전과제 개발을 진행하면서 필요하다고 느낀 테스트 코드에 대해서 작성할 것입니다. 틀린 점이 있을 수 있습니다. Django rest framework 라이브러리로 개발을 해오면서 API가 제대로 동작하는지 Postman을 사용하여 확인하였지만, API가 많아질 수록 손수 테스트하기 어려워지기 때문에 테스트 코드를 작성해야 한다. Unit Test : 하나의 모듈을 기준으로 독립적으로 진행되는 가장 작은 단위의 테스트이다. 즉, 내가 작성한 코드의 가장 작은 단위인 함수를 테스트 하는 메소드이다. Unit Test가 무엇인가? : 파이썬에는 unittest 라는 유닛테스트를 가능하게 해주는 모듈이 포함되어있다. unittest 외에도 pytest 라는 패키지도 있지만 장고에서는 기본적으로 unit..
[리눅스] 8. 고급 키보드 기법 커맨드라인 편집 : bash는 Readline이라고 하는 라이브러리를 사용하는데, 이것으로 커맨드라인을 편집할 수 있다. 1. 커서 이동 CTRL - A : 줄 맨 앞으로 커서 이동 CTRL - E : 줄 맨 끝으로 커서 이동 CTRL - F : 다음 한 글자로 커서 이동. 오른쪽 화살표 키와 동일함 CTRL - B : 이전 한 글자로 커서 이동. 왼쪽 화살표 키와 동일함 ALT - F : 다음 한 단어로 커서 이동 ALT - B : 이전 한 단어로 커서 이동 CTRL - L : 화면을 지우고 커서를 왼쪽 최상단으로 이동. clear 명령어와 동일함 텍스트 수정 텍스트 편집 명령어 CTRL - D : 현재 커서 위치에 있는 글자 지우기 CTRL - T : 현재 커서 위치에 있는 글자와 바로 앞 글자의 위..
[리눅스] 7. 확장과 인용 확장 : 명령어를 입력하고 엔터키를 누르면 bash는 그 명령어를 수행하기 전에 텍스트에 몇 가지 프로세스를 진행한다. * 기호처럼 쉘에 여러 의미를 주는 경우나 연속된 문자열로 처리되는 것과 같은 경우처럼, 이러한 프로세스를 확장이라고 한다. 확장이라는 기능으로 인해 무엇이든 입력하면 쉘이 그것을 처리하기 전에 다른 무언가로 확장된다. 확장을 이해하려면 echo 명령어를 사용하면 된다. echo : 표준 출력상에 텍스트 인자를 표시. iseungmin@iseungmin-ui-MacBookAir  ~  echo this is test  ✔  1993  15:45:58 this is test this is test 라는 텍스트가 표시되었다. iseungmin@iseungmin-ui-MacBookA..
[Git] 이미 push한 commit message 변경하기 git commit 컨벤션에 대해서 알게되어서 기존 개발중인 프로젝트에 컨벤션을 적용해서 진행해 보기로 하였다... 그런데 이미 commit message 를 입력하고 push 까지 해버렸는데, github에서도 변경이안되고.. 어떻게 해야할까?? 1. rebase로 에디터 들어가기 git rebase HEAD~1 -i # 3번째 까지 push한 기록들까지.. # git rebase HEAD~3 -i 터미널로 들어가서 위 명령어를 입력하면 에디터로 들어가서 해당 커밋 메세지를 볼 수 있다. ※ 우리가 몇 번째 commit 내용을 수정해야하는지 고려해보고 git rebase HEAD~{number} -i 코드를 터미널에 입력하면 {number}에 몇 번째인지 숫자를 입력해서 변경하면 된다. 2. 에디터에서..
[리눅스] 6. 리다이렉션 I/O 리다이렉션 (입출력 방향 지정)의 명령어들을 알아볼 것이다. 명령은 리다이렉션을 토해 파일로부터 입력받을 수 있고, 또한 파일로 출력할 수 있다. 강력한 파이프라인을 만들기 위해서 필요한 명령어들을 연결할 수 있다. 1. 표준 입출력과 표준 오류 : 많은 프로그램들은 일종의 출력을 만들어낸다. 출력은 두 가지 형식을 포함한다. 첫 번째는 프로그램의 결과이다. -> 프로그램이 출력하도록 설계한 데이터를 말한다. 두 번째는 프로그램이 어떻게 돌아가고 있는지를 말해주는 상태 및 오류 메시지 형식이다. 위를 토대로 ls 와 같은 프로그램은 사실 표준 출력 (stdout)이라고 불리는 특수한 파일에 이 명령어에 대한 결과를 보내고 표준 오류 (stderr)라는 또 다른 파일에 그 상태 메시지를 전송한다. ..
[리눅스] 5. 명령어와 친해지기 5. 명령어 /usr/bin 디렉토리에서 본 파일들 처럼실행프로그램이라고 말한다. 쉘에 내장되어 있는 명령어이다. 또는, 쉘 함수이다. 별칭이다. 즉, 다른 명렁어로부터 우리만의 명령어를 새롭게 정의할 수 있다. 명령어 확인 1) type - 명령어 타입 표시 : 쉘이 실행하게 될 명령어가 어떤 타입인지 보여준다. type command 2) which - 실행 파일의 위치 표시 : 때때로 실행 프로그램이 여러 버전으로 설치되고는 한다. 실행할 프로그램의 정확한 위치를 파악하기 위해 사용한다. which command 명령어 도움말 보기 1) help - 쉘 빌트인 도움말 보기 : 명령어가 무엇인지에 대한 이해를 통해 각 명령어마다 가지고 있는 도움말을 검색할 수 있다. command --help 2) ..