본문 바로가기

반응형

BackEnd

(28)
AbstractUser를 이용한 Custom User Field 확장 방법 Django AbstractUser를 이용한 Custom User Field 확장 방법 다른 여러 블로그 등을 찾아보았지만 장고를 이제 막 시작한 나한테는 설명을 이해하기가 쉽지 않았다. 아래 내용은 장고의 User 모델을 사용하면서 User Field 확장을 쉽게 하는 법을 설명한다. 해당 내용은 장고의 공식 문서를 참고해서 작성하였다. 조건은 현재 CreateView를 통해 UserCreateView를 생성했다는 가정 하에 작성한다. 1) 새로운 app 생성 User의 Field를 관리할 앱을 생성한다. python manage.py startapp account 2) models.py 작성 User 필드에 추가할 내용을 작성한다. # account/models.py from django.db imp..
WSL2 사용 설정(윈도우에서 Ubuntu 사용하는 방법) WSL2 사용 설정(윈도우에서 Ubuntu 사용하는 방법) WSL(Windows Subsystem for Linux)은 윈도우 환경에서 VM(Virtual Machine) 과 같은 도구 없이 윈도우 환경에서 Linux를 사용할 수 있도록 도와줍니다. PowerShell을 Bash처럼 사용하고, Linux 명령어(sed, awk, vim, apt 등)를 사용할 수 있을 뿐만 아니라 Linux 커널도 사용이 가능합니다. 설치방법 관리자 권한으로 Windows PowerShell을 실행시킵니다. # Windows SubSystem Linux를 활성화시키는 명령어 > dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /..
DevOps란? DevOps 정의 DevOps = Development(개발) + Operations(운영) 의 합성어 소통, 협업, 통합 및 자동화를 강조하는 소프트웨어 개발 방법론 정확한 정의가 존재하지 않는 추상적 개념이지만 소프트웨어를 알맞은 시기에 출시하기 위해 개발과 운영이 상호의존적으로 대응해야 한다는 의미입니다. 즉, 개발과 운영의 경계를 허물고 통합하고자 하는 문화 혹은 철학이라고 할 수 있습니다. DevOps가 필요한 이유 소프트웨어 개발은 아래와 같은 라이프사이클(생애주기)을 갖고 있습니다. 각 단계별로 많은 커뮤니케이션이 필요합니다. 설계자가 설계한 내용을 개발자가 이해해야 하고, 개발자가 만든 소프트웨어를 테스터가 테스트 한 후 그에 맞는 피드백을 전달하는 등의 소통이 적지 않습니다. DevOps..
[# DRF Project_User] 3. Registering New User(회원가입 기능) Django Rest Framework Part.3 지금까지 만든 User Model에 새로운 User를 등록하는 기능을 만들어보도록 하겠습니다. 목차 1. serializers.py 2. views.py 3. urls.py 4. renderers.py 5. views.py 1. serializers.py 처음 해야할 부분은 serializers.py 파일을 만들어 주는 것입니다. serializer는 간단하게 말하자면 모델의 내용을 create하거나 update할 때, 그 내용을 직렬화하는 기능을 수행합니다. 먼저 serializers.py, views.py 처럼 기능을 갖는 파일들을 api 폴더를 만들어 한 곳에 모아주도록 하겠습니다. 저는 test.py 파일을 삭제하고, authentication ..
[# DRF Project] Postman 사용 방법 - 2 POSTMAN 지난 글에 이어서 POSTMAN의 간단한 사용법에 대해서 알아보도록 하겠습니다. [# DRF Project] Postman 사용 방법 - 1 POSTMAN DRF Project를 하면서 Postman을 처음 사용해보았습니다. Postman은 API를 구축하고 사용하기 위한 API 플랫폼입니다. DRF에서는 Postman을 client가 request를 어떤 형태로 보내야하고 서버에서 response.. axce.tistory.com 목차 1. Method 변경 2. URL 입력 3. Headers 부분 입력 4. Body 입력 1. Method 변경 Method를 변경하기 위해서는 앞서 만들었던 request를 열고, 의 POST/GET 부분을 눌러 변경해주면 됩니다. 2. URL 입력 요..
[# DRF Project] Postman 사용 방법 - 1 POSTMAN DRF Project를 하면서 Postman을 처음 사용해보았습니다. Postman은 API를 구축하고 사용하기 위한 API 플랫폼입니다. DRF에서는 Postman을 client가 request를 어떤 형태로 보내야하고 서버에서 response가 어떤 형태로 돌아오는지 확인하는데 사용합니다. 사용 방법이 간단한 편입니다. 제가 많이 사용해본 것은 아니라 사용 방법이 미숙할 수 있습니다만 DRF Project를 진행하면서 사용하기에는 제가 설명한 부분만 이해하시면 충분하실 거라고 생각됩니다. 더 자세히 알고 싶으신 분들은 아래 링크로 접속하셔서 읽어보시기 바랍니다. https://learning.postman.com/docs/getting-started/introduction/ Home P..
[# DRF Project_User] 2. Custom User model(커스텀 User) Django Rest Framework Part.2 Django는 User Model을 기본적으로 제공합니다. (*기본 User Model DOC) 하지만 대부분의 경우 User Model을 재구성해야 합니다. 각자 필요에 맞게 User Model을 재구성하는 방법을 알아보도록 하겠습니다. 이번 파트에서는 상황에 맞는 User Model을 재구성하는 방법에 대해 공부해보도록 하겠습니다. 목차 1. BaseUserManager 2. User Model 만들기(1) - TimestampedModel, UserModel 3. User Model 만들기(2) - UserModel에 JWT 적용 4. CreateSuperUser 1. BaseUserManager Django는 커스텀 유저(Custom User)를..
[# DRF Project_User] 1. 실습환경 구축 및 Project 실행 Django를 접한 이후로 Django 와 관련된 글을 읽고 여러 실습을 해왔습니다. 그 와중에 Django Rest Framework(DRF)를 알게 되었고, 여러가지 실습을 진행했습니다. 실습을 진행하면서 아쉬웠던 부분은 DRF를 이용한 여러 기능을 설명하는 블로그, 책 등은 있었으나 실제 Project성으로 실시한 것은 없었다는 점입니다. 따라서 저는 영문판 DRF Tutorial인 realworld 를 참고해 한글판 DRF Tutorial Project를 만들고자 합니다. Project에서 언급되는 부분을 각 블로그 부분에서 설명할 예정이기 때문에 DRF Project 카테고리를 따라오시면서 같이 올라오는 링크를 따라 공부하시면 됩니다. 추후에는 DRF Project에서 진행한 내용과 Front ..
Django 장고 - Secret key 파일 분리하는 방법 장고 프로젝트를 Git에 업로드 하거나 배포할 때, 보안상으 이유로 Secret Key를 분리해야 합니다. 이번에는 Secret Key를 파일로 따로 관리하는 방법에 대해 알아보도록 하겠습니다. secrets.json 파일을 만들기 - 먼저 secret key를 담을 secrets.json 파일을 manage.py과 같은 위치에 만듭니다. - 이 json file의 형식은 아래와 같습니다. - "SECRET KEY" 부분에 본인의 SECRET KEY를 입력해주면 됩니다. { "SECRET_KEY" : "SECRET KEY" }​ settings.py을 수정해줍니다. import os # json file을 읽기 위해 json module을 import 합니다. import json # Error 발생시 ..
Django 장고 Form_valid 함수 Django의 view 안에 있는 form_valid 함수에 대해서 간단하게 알아보도록 하겠습니다. def form_valid(self, form): form_valid 함수는 유효성 검사가 끝났을 때 호출되는 함수입니다. form_valid를 추가해 정보를 저장합니다. 예를 들어, ID 가입을 확인하는 기능을 만든다고 했을 때의 경우 ID 가입을 위한 Form을 작성하도록 합니다. 여기서 user의 ID가 중복이지 않고, password와 비밀번호 확인을 위한 check_password가 같은 경우에 form_valid 함수는 user정보가 저장되도록 합니다.(form.save()) 만약 password와 check_password가 다른 경우 form_valid 함수가 동작하지 않아 유저정보가 저장되..

반응형