전체 글
-
[Github] Homebrew gh를 이용해서 로컬에서 git 접근하기 for M1, M2 맥북Github 사용법 2022. 12. 1. 15:53
Homebrew 설치하기 Homebrew The Missing Package Manager for macOS (or Linux). brew.sh 위 홈페이지 링크로 들어가면 설치 코드를 복사할 수 있다. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 터미널을 켜서 위에서 복사한 코드를 붙여넣기 하면 password를 입력하라고 한다. 자신의 컴퓨터 혹은 노트북 비밀번호를 입력하고 엔터를 몇 번 치면 다운로드가 실행된다. M1, M2 맥북 Homebrew 경로 변경 만약 M1 혹은 M2 맥북을 사용하고 있다면 설치 경로가 인텔 맥북과 달라서 brew를 찾지 못하기 때문에 추가 작업이..
-
[Django] N:M 관계에서 order_by 사용시 duplicate 오류Django 개발 2022. 11. 29. 14:57
N:M 관계를 가진 여러 테이블을 거쳐 정렬을 해야할 때, queryset 결과가 중복되는 이슈를 발견했다. 해당 문제는 distinct()로는 해결하기 어렵기 때문에 다른 접근 방식이 필요하다. 예시 코드 예를 들어 후기에 연결된 주문서의 제품 중 후기 이벤트가 진행중이라면 상위에 노출시키고 싶어서 아래 코드처럼 쿼리를 짤 경우 총 개수는 일치하지만 같은 후기가 여러 개 반환된다. Review.objects.all().order_by('order__products__review_events') 이 때, 해결 방법은 annotate를 사용하여 Max로 묶어주면 된다. Review.objects.all().annotate(review_event=Max('order__products__review_event..
-
JWT는 무엇인가? (세션 방식과 차이, 구조, 작동 방식)여러가지 공부 2022. 4. 26. 18:09
1) Json Web Token JWT(JSON Web Token)는 당사자 간에 정보를 JSON 개체로 안전하게 전송하기 위한 간결하고 자체 포함된 방법을 정의하는 개방형 표준( RFC 7519 )입니다. 이 정보는 디지털 서명되어 있으므로 확인하고 신뢰할 수 있습니다. 다음은 Authentication과 Authorization의 차이입니다. Authentication / 인증 로그인과 같이 사용자 또는 프로세스의 신원을 확인하는 프로세스 인증에 사용할 데이터와 저장되어 있던 데이터를 비교함 이 데이터는 인증 서버에 저장되며, 가장 일반적인 인증 방법은 비밀번호를 사용하는 것 Authorization / 권한부여 누가 무엇을 할 수 있는지 결정하는 규칙 DBA는 데이터베이스 작성 및 삭제 권한이있는 ..
-
[Docker] No such file or directory: 'docker' 오류 해결Django 개발 2022. 4. 25. 18:38
새로운 라이브러리를 추가하기 위해 docker에 실행중인 container와 image를 날리고 다시 받아오는 과정에서 오류가 생겼다. FileNotFoundError: [Errno 2] No such file or directory: 'docker' 오류를 서치해보니 volume을 제거해주지 않아서 꼬인 문제였다. 해결방법은 생각보다 간단하다. 터미널을 켜서 docker-compose.yml이 위치한 곳으로 이동하여 아래 두 문장을 입력해준다. docker-compose down -v -> 볼륨 삭제 docker-compose up --build -> 재빌드 이렇게 하면 새로운 라이브러리들이 열심히 설치되는 화면을 볼 수 있다. (220426 추가) 서버 실행 문제는 해결되었지만 테스트 코드와 디버그가..