Django, DRF

· Django, DRF
댓글,대댓글 모델 정의 # models.py class Comment(TimeStampedModel, models.Model): post = models.ForeignKey('Post', related_name='comments', on_delete=models.CASCADE) user = models.ForeignKey(User, related_name='comments', on_delete=models.CASCADE) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) root = models.ForeignKey('self', related_name='root_comment', on_delete=models..
· Django, DRF
DRF에서는 Authentication(인증)과 Permission(권한)을 효과적으로 관리할 수 있다. Authentication (인증) 인증은 사용자가 시스템에 로그인하고 자원에 엑세스할 수 있는지 확인할 수 있는 과정으로 DRF에서는 여러 가지 인증 방법을 제공한다. DRF의 인증 방법 1. BasciAuthentication HTTP 제어 header로 넘긴 ID와 Password를 base64로 encoding하는 방법이다. 사용자 이름과 비밀번호가 base64로 인코깅 되어 전송되기 때문에 매우 간단하지만 보안상의 위협이 있을 수 있다. HTTPS와 같은 보안 프로토콜과 함께 사용하는 것이 좋다. 2. TokenAuthentication 클라이언트가 서버에 인증 요청을 보내면 서버가 해당 사..
· Django, DRF
Django에서는 함수기반 뷰(FBV)와 클래스 기반 뷰(CBV) 두 가지 유형의 뷰를 제공합니다. 이중 CBV는 Class Based View의 줄임말로 클래스를 사용하여 뷰를 정의하고 구성하는 방식을 의미합니다. CBV의 고도화 단계로 APIView > Mixins > Generic CBV > ViewSet 순으로 구성되어 있습니다. 모두 동일한 기능을 하는 view의 구현 방식이지만, 오른쪽으로 갈 수록 상속을 이용하여 view를 더욱 간단히 구현할 수 있습니다. APIView APIView는 원하는 HTTP를 커스터마이징할 수 있다는 장점이 있습니다. 반대로 코드가 더 길어질 수 있다는 단점도 있습니다. Method List 1. Get 주로 리소스를 검색하고 조회하는데 사용된다. 데이터를 읽고 ..
· Django, DRF
django.urls.exceptions.NoReverseMatch: Reverse for 'account_inactive' not found. 'account_inactive' is not a valid view function or pattern name. 아래 사진은 소셜로그인으로 로그인시 유저 이메일 정보를 받고 유저가 존재하지않으면 회원가입을 시켜주는 부분인데 이부분에서 위 제목처럼 에러가 발생하였다. 발생원인 현재는 is_active의 기본 값이 True로 되어 있지만 에러가 났을 당시에는 False로 되어있어 user 생성시 계정이 비활성화되어 있어서 그랬던 것이다. 해결 방법 1. user 모델의 is_active의 기본값을 True로 변경한다. 2. 마이그레이션 파일을 만든후 적용시켜준다..
· Django, DRF
Django 프로젝트 단계별 가이드라인 3 소셜 로그인 소셜 로그인을 위한 패키지는 아래의 패키지들을 사용한다. - 자세한 사용법은 공식 문서를 참고 - 버전을 지정해 준 이유는 상위 버전에서는 google, apple 로그인 시 라이브러리 충돌이 일어나서 제대로 동작하지 않는다. - allauth를 마이그레이션 해준후에 django.config.sites를 마이그레이션을 할 경우에도 에러가 발생하니 반드시 같이 진행해야 한다. pip install dj-rest-auth==4.0.1 pip install django-allauth==0.50.0 pip install djangorestframework-simplejwt DRF 구글 소셜로그인 TypeError: string indices must be ..
Jong_seoung
'Django, DRF' 카테고리의 글 목록 (3 Page)