SQLAlchemy models.py 자동생성
2021. 5. 6. 18:38ㆍ개발노트
기존에 만들어져있던 DB의 테이블들을 models.py에 맵핑한다.
클래스명은 테이블명을 대문자로 바꿔서 만들어준다.
from sqlalchemy.engine import create_engine
from sqlalchemy.schema import MetaData
from sqlacodegen.codegen import CodeGenerator
url = "mysql+pymysql://{사용할아이디}:{비밀번호}@{000.000.000.000}:{포트번호}/{db이름}"
engine = create_engine(url)
metadata = MetaData(engine)
metadata.reflect(engine)
with open('models.py', 'w', encoding='utf-8') as outfile:
generator = CodeGenerator(metadata)
generator.render(outfile)