Web83 Django - 1월~12월까지의 데이터 가져오면서 변수명 만들기 안녕하세요. 1월~12월까지의 데이터 가져오면서 변수명 만들기 오늘은 Django ORM 을 사용하다가 1월~12월까지의 데이터를 한번에 가져오는 방법을 생각하다가 얻은 저만의 방법을 까먹지 않기 위해 포스팅해보려고 합니다. Work라는 테이블이 있고, workday 라는 Datetype의 필드가 있다고 가정하겠습니다. 제가 원하는 값은 달 마다 얼마나 많은 일을 했는지 값을 보고 싶은 상황입니다. 1 2 3 4 5 6 7 8 9 10 11 12 from datetime import datetime today = datetime.now() for i in range(1, 13): # 1~12월의 값을 생성해줍니다. globals()[f'month_{i}'] = Work.objects.filter( wor.. Web/Django 2020. 4. 20. Django - Cookbook ORM(쿼리문) 연습하기 - 1 안녕하세요. 평소 ORM은 사용할 줄 알지만 내부적으로 쿼리문이 어떻게 짜여지고, 어떻게 사용해야 더 효율적이고, 최대한 쿼리문을 줄일 수 있는 방법을 찾아보면서 코드를 짜다가 휴일에 시간이 생겨 평소에 Github Star를 박아두었던 Django CookBook을 보면서 ORM 사용법을 복습하고 지금보다 더 효율적인 쿼리를 짜기 위해 Cookbook을 살펴보겠습니다. Cookbook 문서 바로가기 장고 ORM 요리책 — Django ORM Cookbook 2.0 documentation © Copyright 2018, Agiliq Revision 159ade05. django-orm-cookbook-ko.readthedocs.io "Cookbook이란 장고 ORM 요리책은 장고를 이용한 다양한 레시피.. Web/Django 2020. 4. 15. Django REST Framework JWT를 알아보자 회사 코드를 읽던 중 계정 관련 레포를 보다가 JWT와 관련 된 내용이 있어서 정확히 어떻게 동작하는지 공식문서와 블로그를 읽은 내용을 바탕으로 정리하였습니다. 먼저 JWT가 뭔지 알아볼 필요가 있습니다. JWT란 Json Web Token 입니다. 이름만봐도 웹 토큰의 역할을 하고 있다는 것을 확인할 수 있습니다. 그럼 토큰이란 무엇일까, 토큰을 갖고 있다는 것을 어떠한 행동을 할 수 있는 권한을 갖고 있다는 것과 같습니다. 정리해보면 우리는 로그인하기 위해서 이 사용자가 인증받은 사용자인지 확인할 필요가 있고, 사용자가 로그인 시 토큰을 발행해 웹 사이트 안에서 본인이 가진 토큰(권한)으로 글도 작성하고, 여러 작업들을 할 수 있을 겁니다. 토큰 기반 인증 시스템을 선택하는 이유를 잘 정리해둔 블로그.. Web/Django 2020. 3. 21. Django - messages 활용 from django.contrib import messages 를 활용는 방법을 알아보겠습니다. messages에는 기본적으로 들어있는 값들이 있습니다. 자세한 설명은 아래 블로그에 자세히 나와있습니다. https://ssungkang.tistory.com/entry/Djangomessage-framework-%EC%95%8C%EC%95%84%EB%B3%B4%EA%B8%B0 [Django]message framework 알아보기 로그인을 실패했을 때 사용자가 확인 할 수 있도록 알람을 띄워줘야 합니다. javascript alert 을 통해서 알람을 쉽게 띄울 수 있지만 로그인에 성공했을 때, 혹은 실패했을 때 다른 알람을 띄워줘야 합니다. 구현.. ssungkang.tistory.com from dj.. Web/Django 2020. 2. 1. Django - pipeline 의존성, 배포관리 http://guswnsxodlf.github.io/django-bower-pipeline bower와 pipeline을 이용한 Django 의존성, 배포 관리 들어가며Django 뿐만 아니라 웹 프레임워크로 개발을 하다 보면, 프론트엔드(javascript) 부분의 의존성을 관리해줘야 한다. AngualrJs나 ReactJs, BackboneJs 경우에는 프론트엔트 프레임워크이므로 bower나 npm의 package.json으로 관리하고... guswnsxodlf.github.io 프로젝트가 엄청나게 커졌다고 생각해보자, css 파일이 300개가 되었다고 가정하였을 때 의존성 관리란 쉽지 않다. Django 에서는 django-pipeline을 이용하여 static 파일들을 쉽게 관리.. Web/Django 2020. 1. 31. Django - 공식문서 뿌시기 스터디(1. Model) 모델 테이블 이름은 appname_person 으로 생성됩니다. 하지만 이 부분을 무시하여 테이블을 생성할 수도 있습니다. [참고] 데이터베이스 테이블 이름을 대체하려면 db_table매개 변수를 사용하면 됩니다. [TMI] MariaDB, MySQL에는 소문자 테이블 이름을 사용합니다. Oracle은 테이블 이름을 30자로 제한합니다. class Meta: db_table = 'person' id 필드가 자동으로 추가됩니다. ex) id = models.AutoField(primary_key=True) 모델 사용하기 앱 생성과 동시에 INSTALLED_APPS 에 등록해줘야됩니다. 등록하고나서 python manage.py makemigrations, python manage.py migrate Fie.. Web/Django 2020. 1. 2. Django - allauth signupform custom https://django-allauth.readthedocs.io/en/latest/forms.html Forms — django-allauth 0.32.0 documentation © Copyright 2017, Raymond Penners Revision ef077431. django-allauth.readthedocs.io allauth의 SignupForm은 기본적으로 username과 email, password1, password2를 제공해준다. default_field_order = [ 'email', 'email2', # ignored when not present 'username', 'password1', 'password2' # ignored when not present ] 하지만.. Web/Django 2020. 1. 2. Django allauth User has no field named 'username' 해결방법 https://stackoverflow.com/questions/19683179/remove-username-field-from-django-allauth Web/Django 2019. 12. 30. Django-crontab 사용 crontab 사용 이유 매일 18:00 에 요청자가 있는지 확인하고, 요청자가 있는 제공자에게 알림을 전송하는 기능을 만들려고 합니다. Django 의 쿼리셋을 이용하여 오늘 날짜의 데이터들을 가져오는 것은 전에 포스팅했기 때문에 아래 링크를 확인해주시면 됩니다. https://newbiecs.tistory.com/239?category=724785 Django filter(__day) Order 테이블 안에 created_at 이라는 Datetimefield를 오늘날짜와 비교하려고 찾아보던 중 filter(필드명__day)라는 것을 알게되었고 활용해보았습니다. order.craeted_at 안에는 아래와 같은 데이터가 들어있습.. newbiecs.tistory.com from django.db.mod.. Web/Django 2019. 12. 6. Django filter(__day) Order 테이블 안에 created_at 이라는 Datetimefield를 오늘날짜와 비교하려고 찾아보던 중 filter(필드명__day)라는 것을 알게되었고 활용해보았습니다. order.craeted_at 안에는 아래와 같은 데이터가 들어있습니다. datetime.datetime(2019, 12, 5, 5, 39, 41, 323626, tzinfo=) 여기서 저는 일수만 필요하기 때문에 Order.objects.filter(created_at__day=5) 를 활용하여 날짜가 5일인 것들만 꺼내오는 것에는 성공했습니다. 하지만 5를 fix값으로 둘 수 없고, 매일매일 그 날의 일수를 넣어야되기 때문에 timezone.now().strftime("%d")를 사용해 '05' 라는 값을 꺼냈지만 사용할 수.. Web/Django 2019. 12. 5. Django CBV : DetailView에서 paginate_by 사용하기 https://stackoverflow.com/questions/25569551/pagination-from-a-django-detailview Pagination from a Django DetailView Given a models.py: class Partner(models.Model): ... (fields irrelevant to this example) class Lecture(models.Model): ... (other fields not relevant to this example) partner models. stackoverflow.com Web/Django 2019. 11. 29. Django - Custom Manager, QuerySet https://wikidocs.net/6668 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net models.Manager는 Django 모델에 데이터베이스 쿼리 작업이 제공되는 인터페이스 입니다. Manager는 Django 애플리케이션의 모든 모델에 대해 하나 이상 존재합니다. 모델 매니저의 Default 값은 objects로 되어 있습니다. class TestManager(models.Manager): def is_display(self): return self.get_queryset().filter(is_display=True) class Test(models.Model): objects = TestManager() 커스텀 모델 매니저를 구현하는 방법에는 크게 두 가지가 있.. Web/Django 2019. 11. 20. 이전 1 2 3 4 5 ··· 7 다음 💲 추천 글