- Django Rest Framework
[Pillow : Image위 글자 및 배경색 설정해주기]
#1. x, y의 좌표를 이전 코드에서 받아서 textbbox의 영역을 설정해주고,
position = (x, y)
#2. textbbox의 영역을 받아서
left, top, right, bottom = draw.textbbox(position, i, font=font)
#3. textbbox의 영역 범위에서 (left-2, top-2, right+2, bottom+2) 이영역에 정의한 RGB색으로 배경색을 fill 해준다.
draw.rectangle((left-2, top-2, right+2, bottom+2), fill=(0,0,0,150))
#4. text는 position에 위치하고 변수 i에 적어놓은 글자가 들어간다 + 글자색은 정의된 RGB로 들어가게 된다.
draw.text(position, i, font=font, fill=(255,255,255))
#3번의 fill = 배병색
#4번의 fill = 글자색
[Django Seed, Faker를 활용한 데이터 만들기]
- 더미 유저가 필요해서 Seed, Faker를 활용해 데이터 베이스에 저장해준다.
- 참고링크
https://velog.io/@kmnkit/Django-Seed-Faker를-활용한-데이터-만들기-총정리
Django Seed, Faker를 활용한 데이터 만들기 총정리
장고 개발을 하려다 보면 테스트용 데이터는 필요한데 일일히 많이 만들기는 어렵고 할 때 활용 가능한 것이 바로 Django Seed와 Faker입니다.또한 각 모델에 따라 OneToOneField냐, ManyToManyField냐, ForeignK
velog.io
1.인스톨 / Settings
간단하게 아래 명령어를 터미널에 입력함으로써 인스톨 가능합니다.
pip install django-seed
이 때 faker 패키지가 함께 설치됩니다.
설치 후, settings.py → Installed apps에 "django-seed"추가 후
파일경로 : users/management/commands/seed-users.py를 작성합니다.
이 때, management와 commands 폴더 각각에 init.py 파일(아무 내용 없어도 됨)을 함께 작성해야 이 폴더들이 파이썬 모듈로 인식됩니다.
2.Users처럼 외부키가 전혀 없는 모델의 데이터 작성
seed_users.py
1 from django.core.management.base import BaseCommand
2 from django_seed import Seed
3 from users.models import User
4
5 class Command(BaseCommand):
6 help = "이 커맨드를 통해 랜덤한 테스트 유저 데이터를 만듭니다."
7
8 def add_arguments(self, parser):
9 parser.add_argument(
10 "--total",
11 default=111, # 몇 명의 유저를 만드나 설정해줌
12 type=int,
13 help="몇 명의 유저를 만드나"
14 )
15
16 def handle(self, *args, **options):
17 total = options.get("total")
18 seeder = Seed.seeder()
19 seeder.add_entity(
20 User,
21 total,
22 {
23 "is_staff": False,
24 "username": lambda x: seeder.faker.user_name(),
# 내가 만드려는 model에 맞게 custom
26 }
27 )
28 seeder.execute()
29 self.stdout.write(self.style.SUCCESS(f"{total}명의 유저가 작성되었습니다."))
작성 후,
터미널에서 python manage.py seed_users 명령어를 실행하면 위 코드의 내용이 실행됩니다.
이 경우 데이터를 만드는 데에는 아무 바깥쪽에서의 제한은 없으나 모델 안의 각 필드, 특히 Username이나 Email 같은 경우 모든 유저가 다 달라야 하므로 lambda와 faker를 통해 랜덤값을 쥐어줍니다.
- github
[commit할 파일 설정]
- git add 후 git status를 입력해 확인해보면 변경되거나 커밋해야할 파일들 목록을 확인해 볼 수 있다.
- 직접 하나하나 git add 파일명 (tab으로 자동완성 가능) 을 적어줘서 commit할 파일들을 정해주거나
- git add . 으로 모든 파일을 commit할 목록으로 지정해줄 수 있다.
'woncoding > TIL' 카테고리의 다른 글
| TIL | 12.8.목 [DRF ↔️ JS CRUD] (0) | 2022.12.09 |
|---|---|
| TIL | 12.7.수 [DRF ↔️ JS CRUD] (0) | 2022.12.09 |
| TIL | 12.5.월 [DRF ↔️ JS CRUD] (0) | 2022.12.05 |
| TIL | 12.2.금 [DRF ↔️ JS CRUD] (0) | 2022.12.02 |
| TIL | 12.1.목 [Back-end] (0) | 2022.12.02 |