flask 기반의 프로젝트에서 mysql database에 접근하는 방법이다.
간단하게 회원가입을 구현하기 위해 다음과 같은 users 테이블을 하나 만든다.

회원가입을 하기 위해서 여러 검증과정을 거쳐야 하지만 여기서는 다음과 같이 간단히 구현해본다.
name, email, password, profile 정보를 입력 받는다.
이 때, email 은 중복이 불가능하다.
request가 요구사항에 맞으면, 회원가입을 완료하며 유저 테이블에 insert한다.
위 내용을 위해 app.py에서 생성한 database에 접근할 수 있도록 config.py에 관련 내용을 정리한다.
config.py에는 다음과 같은 정보를 넣는다
db = {
'user' : 'db 설정시 입력한 user',
'password' : '설정한 비밀번호',
'host' : 'localhost', (dev이기 때문에)
'port' : 설정한 포트 넘버,
'database' : '만든 database 이름'
}
DB_URL = f"mysql+mysqlconnector://{db['user']}:{db['password']}@{db['host']}:{db['port']}/{db['database']}?charset=utf8"
config.py를 app.py에서는 다음과 같이 호출한다.
def create_app(config):
app = Flask(__name__)
if config is None:
app.config.from_pyfile("config.py")
database = create_engine(app.config['DB_URL'], encoding='utf-8', max_overflow=0)
app.database = database
return app