분류 전체보기(85)
-
[Django] DRF로 pagination 적용하기 -PageNumberPagination
페이지네이션(Pagination) 구글에 DRF pagination으로 검색을 하면 많은 결과가 한번에 보여지는 것이 아니라 다음과 같이 페이지별로 보여진다. 결과가 약 만개라고 가정했을 때 매번 전체 결과를 가져오면 속도가 굉장히 느리고 유저입장에서는 불편할 것이다. 따라서 전체 데이터에서 지정된 값 만큼 데이터를 나눠서 가져오는 방식을 페이지네이션 이라고 한다. http://127.0.0.1:8000/user/?page=2 DRF에서는 PageNumberPagination, LimitOffsetPagination, CursorPagination 와 같은 페이지네이션 기능을 제공하고 있다. 이 글에서는 실제 사용을 한 PageNumberPagination로 페이지네이션을 적용하는 것에대해서만 작성하려고..
2023.03.16 -
[SQLD] 데이터 모델링의 이해-1
데이터 모델링이란? 정보 시스템을 구축하기 위한 데이터 관점의 업무 분석 기법이다. 현실 세계의 데이터에 대해, 약속된 표기법에 의해 표현하는 과정이다. 데이터베이스를 구축하기 위한 분석/설계의 과정이다. -> 모델링 자체가 업무 설명의 연장선이다. 데이터 모델링의 특징 추상화 - 공통적인 특징을 갖고 간략히 표현 단순화 - 복잡하지 않고 누구나 이해할 수 있게 표현 명확성 - 명확한 의미 해석, 한 가지 의미 좋은 데이터 모델링 요소 완전성 중복 배제 업무 규칙(business rule) 데이터 재 사용 의사소통 모델링시 유의점 데이터 중복 X - 여러 곳에 같은 데이터가 저장되면 안됨 비 유연성 - 데이터가 업무에 따라 수시로 변경되기 대문에 유연해야 한다. 비 일관성 - 데이터는 항상 일관성을 가져..
2023.03.16 -
[Error] TypeError: change_view() missing 1 required positional argument: 'object_id'
TypeError: change_view() missing 1 required positional argument: 'object_id' Simplt JWT를 사용해서 미들웨어단에서 처리되도록 로그인 로직을 작성했다. 잘 돌아가는 것을 확인 한 후 다음 이슈를 해결하기위해 어드민 페이지에 접속해 아무 데이터나 클릭한 순간 발생한 에러이다. GET /admin/users/user/1/change/ 해당 url을 보면 어드민 유저페이지의 1번 유저를 수정할 때 발생했다. 유저아이디 1번의 파라미터 값을 읽지 못한것이다. 에러내용을 쭉 보면 내가 작성했던 미들웨어 훅(process_view)에서 발생 하는 것을 알 수 있었다. Middleware Hook 클래스 형식으로 미들웨어를 정의할 때 HTTP requ..
2023.03.16 -
[Oracle] 조건에 맞는 사용자 정보 조회하기
문제 설명 다음은 중고 거래 게시판 정보를 담은 USED_GOODS_BOARD 테이블과 중고 거래 게시판 첨부파일 정보를 담은 USED_GOODS_FILE 테이블입니다. USED_GOODS_BOARD 테이블은 다음과 같으며 BOARD_ID, WRITER_ID, TITLE, CONTENTS, PRICE, CREATED_DATE, STATUS, VIEWS는 게시글 ID, 작성자 ID, 게시글 제목, 게시글 내용, 가격, 작성일, 거래상태, 조회수를 의미합니다. Column name Type Nullable BOARD_ID VARCHAR(5) FALSE WRITER_ID VARCHAR(50) FALSE TITLE VARCHAR(100) FALSE CONTENTS VARCHAR(1000) FALSE PRICE ..
2023.03.15 -
[Oracle] 조건에 맞는 사용자와 총 거래금액 조회하기
문제 설명 다음은 중고 거래 게시판 정보를 담은 USED_GOODS_BOARD 테이블과 중고 거래 게시판 첨부파일 정보를 담은 USED_GOODS_FILE 테이블입니다. USED_GOODS_BOARD 테이블은 다음과 같으며 BOARD_ID, WRITER_ID, TITLE, CONTENTS, PRICE, CREATED_DATE, STATUS, VIEWS는 게시글 ID, 작성자 ID, 게시글 제목, 게시글 내용, 가격, 작성일, 거래상태, 조회수를 의미합니다. Column name Type Nullable BOARD_ID VARCHAR(5) FALSE WRITER_ID VARCHAR(50) FALSE TITLE VARCHAR(100) FALSE CONTENTS VARCHAR(1000) FALSE PRICE ..
2023.03.15