개발일지689 Django - 장고 로그인 했을때만 접근 가능하게하는 함수 LoginRequiredMixin Django를 공부하면서 매일마다 속도가 빠르진 않아서 답답하기도 하지만 많은 것을 배워간다. 그 중에서 후에 필요한 부분이 LoginRequiredMixin 이다. #1 개요 LoginRequiredMixin는 CBV 방식과 궁합이 맞게끔 설계가 된것같다. 그리고 이 LoginRequiredMixin의 기능은, CBV 클래스에 상속받았을때, 해당 클래스로 구동되는 기능에 대하여는 로그인을 해야만 접근이 가능하게끔 설계가 되어있다. 다른 말로는 로그인을 하고, 해당 url에 접근을 해야지 status code가 200이 뜬다. #2 실사용 예 나의 경우를 예로 들어보겠다. # blog/models.py from django.db import models from django.contrib.auth.mod.. 2023. 1. 3. Django - (fields.E320)models on_delete=SET_NULL ERRORS 해결 SystemCheckError: System check identified some issues: ERRORS: blog.Post.author: (fields.E320) Field specifies on_delete=SET_NULL, but cannot be null. HINT: Set null=True argument on the field, or change the on_delete rule. models에 추가하는 방법 중 on_delete=SET_NULL을 입력하게 되면 이 뜻은 "만약 연결되어있는 지금 필드의 존재가 사라지더라도 데이터는 남길게"라는 뜻이라고 보면 될것같습니다. (불확실함, 왜냐하면 말 자체가 NULL을 setting한다는 의미니깐) (그런데 테스트 해보니깐 결과론적으로 작성자를.. 2023. 1. 2. Django - It is impossible to add a non-nullable field (해결 및 설명) #0 개요 상황이야 여러가지가 있을 수 있겠지만, 보통의 경우에는 models.py에 model을 하나라도 등록해두고 사용하던 중에, model 내부의 속성을 한개라도 더 추가한다면 발생하게 되는 에러에 대해서 알아보고자 한다. #1 실제 상황 및 정리 내가 from django.db import models class Post(models.Model): title = models.CharField(max_length=30) hook_text = models.CharField(max_length=100, blank=True) content = models.TextField() head_image = models.ImageField( upload_to='blog/images/%Y/%m/%d/', blank.. 2023. 1. 2. Django - CBV 방식 시리즈2 (DetailView) 완벽설명이라고 볼수있음 #1 개요 1) DetailView도 근본적인 사용방식은 CBV 방식으로써 ListView와 원리적으로는 똑같다. 따라서 구태여 ListView에서 설명된 부분은 생략하고, 실전 코드로 넘어가도록 하겠다. 다만 소개되지 않았지만 새로 발견하게된 부분은 언급하려고 한다. 2) 이 CBV 방식은 보아하니 동등한 앱 내에서만 데이터 전송이 가능한것같다. 별도로 지정을 해준다면야 얘기가 달라질 수 있겠지만, 기본세팅으로는 blog앱단위에서 views.py에 상속받아서 사용하는 CBV 방식은 templates/blog/ 에 위치하게 되는 html 파일을 각 CBV 방식에 맞는 인자명으로 데이터셋을 전송하게 되는 구조같다. 3) 활용하기에 따라서는 근본적으로 하나의 CBV 방식으로도 모두 사용이 가능한 것 같은데 .. 2022. 12. 31. 이전 1 ··· 20 21 22 23 24 25 26 ··· 173 다음