Django
2025/11/09
1. templates/blog_list 이렇게 생성하면 자동으로 폴더까지 생성됨
2. Pycharm에서 모듈을 자동으로 import 하기위해서 : option + Enter

2025/11/10
1. django에서 post를 보내기 위해서는 csrf_token 꼭 필요
2. 같은 의미의 코드지만 단순화

2025/11/11
-
1. Command 누르고 클릭해보면 함수의 사용법을 알 수 있음

-
2. pycharm 에서 Comand + R = 이름 바꾸기
-
3. pycharm 에서 Command + , -> 키맵 -> caret
- 여러개 한번에 드래그 같은거 가능

-
4. cmd + shift + F = 전체검색
2025/11/12
1. 특정 범위를 드래그 한 후에 tab 을 누르면 들여쓰기 한칸
shift + tab 를 누르면 안쪽으로 한칸
2. **
test_dic = {
'a': 1,
'b': 2,
'c': 3
}
self.test(a=test_dict['a'],b=test_dict['b'],c=test_dict['c'])
self.test(**test_dict) ✅
test_list =[1, 2, 3]
self.test(test_list[0],test_list[1],test_list[2])
self.test(*test_list) ✅
2025/11/14
- 암호화
- qwer1234 → dwafawfaf → 복호화 → qwer1234
- 해시화
- qwer1234 → dwafa / wfaf → 암호화(dwafa) → 암호화 반복 → 복호화 불가능
Command + / → 주석 만들기
2025/11/16
# 현재 마이그레이션 된 파일 확인
>> python manage.py showmigrations
# 특정 마이그레이션 적용
# 이후 미적용 대상인 마이그레이션 파일 삭제
>> python manage.py migrate post 0001
# 다시 가장 최신의 마이그레이션 파일 만들기
>> python manage.py makemigrations
# 마이그레이트
>> python manage.py migrate
# 0번 마이그레이션 파일로 돌리고 싶을 때
>> python manage.py migrate post zero
2025/11/24
Django에서는 기본적으로 Primary Key(PK) 가 필요
- 내가 따로 PK를 지정하지 않으면
- Django가 자동으로
id = models.AutoField(primary_key=True) 를 생성
class Blog(models.Model):
title = models.CharField(max_length=100)
class Blog(models.Model):
id = models.AutoField(primary_key=True)
title = models.CharField(max_length=100)
- 즉, id가 아닌 다른 이름으로라도 pk값이 한개라도 존재한다면 id 값은 생성되지 않는다.
일반적으로는 user, account로 이름 짓고 Django가 자동으로 _id 붙임.
fields / read_only_fields 의 차이
class AccountSerializer(serializers.ModelSerializer):
class Meta:
model = Account
fields = [
'id','name', 'created_at',
]
read_only_fields = ['created_at']
{
"id": 1,
"name": "국민은행",
"created_at": "2025-11-24T05:32:00Z"
}
{
"name": "우리은행",
"created_at": "2023-01-01"
}
fields = Serializer
- 어떤 필드를 응답/입력 대상으로 사용할지 결정하는 목록
- 클라이언트가 볼 수 있는 필드 | 클라이언트가 전송할 수 있는 필드 | 전체 출력 구조
read_only_fields =
- 해당 필드는 클라이언트가 값을 수정하거나 전송할 수 없음!(오직 서버가 관리)
POST/PUT/PATCH 요청에서 사용자가 값을 넣어도 무시됨
Serializer 에서 출력은 되지만 입력받지 않는 필드
2025/12/01
알고리즘이란?
- 문제를 해결하기 위한 절차(논리적 단계)를 글이나 의사코드(pseudocode)로 표현하는 것
- “어떤 입력을 받아서 → 어떤 과정으로 처리하고 → 어떤 출력이 나와야 하는가” 단계별 정리
- 즉, 알고리즘 작성 = 설계 + 절차 정의
- 코드를 어떻게 짤지 누군가 이해할 수 있게 설명하는 문서라고 생각하면 됨.
예시 1 - “가계부에 거래 등록 기능” 알고리즘 작성
- 코드 제외 흐름만
- 사용자가 거래 등록 폼을 제출한다.
- 입력값(금액, 카테고리, 날짜)이 유효한지 검사한다.
- 검사를 통과하면 DB에 Transaction 객체를 저장한다.
- 저장된 거래는 해당 사용자의 거래 목록에 포함된다.
- 등록이 완료되면 거래 목록 페이지로 리다이렉트한다.
2025.12.03
- 프로젝트 전체에서 문자열 검색: Command + Shift + F
- 특정 파일 이름 찾기 (파일 검색): Command + Shift + O
- 함수 / 클래스 이름으로 검색 (심볼 검색): Command + Option + O
DRF