sa_column_kwargs는 SQLAlchemy Column 클래스에 사용할 인자를 설정합니다(①). Column은 SQLAlchemy에서 모델 필드를 정의할 때 사용하는 클래스로, SQLModel은 자료형 각주를 기반으로 Column을 자동으로 만들어 줍니다. 예를 들면 다음과 같습니다.
파이썬 예시 코드
# Column을 사용하지 않은 예
class User(SQLModel, table=True):
__tablename__ = "users"
username: str = Field(max_length=40)
# Column을 사용한 SQLModel 예
from sqlmodel import SQLModel, Field, Column, String
class User(SQLModel, table=True):
__tablename__ = "users"
username: str = Field(sa_column=Column(String(40)))