Backend

1. 의존성(Dependency) 추가 build.gradle 수정 dependencies { implementation 'org.springframework.boot:spring-boot-devtools' } 참고) dependencies 우클릭 > Generate > Add dependency > 검색 > Add 로 추가 가능 2. IntelliJ 설정 1) Setting > Build, Exeution, Deployment > Compiler > Build project autiomaically 체크 2) Advanced Settings > Allow auto-make to start even if developed application is currently running 체크 3. Load Gr..
vscode에서 아래와 같은 에러가 뜰 때가 있다. 해당 에러는 vscode의 jvm 버전이 현재 JAVA_HOME에 설정된 자바의 버전과 같지 않을 때 발생한다. vscode 커맨드 창에서 user settings 입력 검색창에 jvm 입력 default를 원하는 버전으로 변경. default 가 1.8 버전이기 때문에 위 에러에서 1.8이 떴던 것이었다. 필자의 경우엔 17로 입력하였다. 그리고 커맨드 창에 reload를 입력하여 vscode를 재실행한다. 문제가 해결된 것을 볼 수 있다!
Snapshot 개발 중인 버전의 스냅샷입니다. 실험 중인 버전이기 때문에 새로 개발 중인 기능이 있을 수 있습니다. M(Milstone) 스냅샷의 마일스톤 입니다. 스냅샷보다 정리가 잘 되어 있지만 역시 새로 개발 중인 기능이 있을 수 있습니다. RC(Release candidate) 말 그대로 릴리즈 후보라는 뜻입니다. 큰 문제가 없다면 개발된 기능들이 배포되며 적당한 수정 및 테스트를 거치고 나면 정식 버전으로 출시됩니다. ga 최종 릴리즈 버전입니다. 수정 및 테스트는 이후 버전을 통해 이루어집니다.
일반적으로 모든 모델에 공통된 필드를 편하게 넣기 위해서 BaseModel을 만들어 사용하곤 한다. 필자의 경우엔 FastAPI의 SQLModel에서 Base 모델을 만들고 싶어서 아래와 같이 만들었다. import re from sqlalchemy.ext.declarative import declared_attr from sqlmodel import SQLModel def camel_to_snake_case(name): # 정규 표현식을 사용하여 CamelCase를 snake_case로 변환합니다. name = re.sub("([a-z0-9])([A-Z])", r"\1_\2", name) return name.lower() class Base(SQLModel): # id: int = Field(prim..
파이썬의 객체는 _로 시작하는 속성을 가리는 은닉화의 속성을 가지고 있다. 그렇기 때문에 SQLModel에서도 _를 포함한 필드를 가져올 수 없는 이슈가 있다. 필자는 작업 중에 사용한 테이블에 _TIMESTAMP 와 같은 필드가 있어 이런 이슈를 직면하게 되었다. 이 이슈를 해결하기 위해 디렉터분께 질문을 드렸고, SQLModel은 기존의 SQLAlchemy의 컬럼을 사용할 수 있는 sa_column이란 프로퍼티를 찾아주셨다. sa_column은 SQLAlchemy Column의 줄임말이다. 아래는 일반적인 Post 모델이다. class Post(Base, table=True): id: int = Field(primary_key=True, index=True) name: str = Field() aut..
Django에선 편하게 restframework-simplejwt를 이용해서 jwt 인증을 구현할 수 있다. jwt에 필요한 기능은 아래와 같다. 로그인 토큰 유효성 검사 로그아웃 또한 우리는 Blacklist 를 포함해서 구현할 것이다. 설정 먼저 라이브러리를 설치한다. poetry를 사용하는 경우엔 poetry add를 하면 된다. pip install djangorestframework-simplejwt settings.py에 아래와 같이 추가한다. 라이브러리의 앱과 JWT 사용 옵션, 인증 클래스를 추가한다. INSTALLED_APPS = [ "django.contrib.admin", "django.contrib.auth", "django.contrib.contenttypes", "django.c..
Say simple
'Backend' 카테고리의 글 목록 (2 Page)