Backend
[flask 회원1] 테이블만들기
두바이유
2021. 7. 16. 18:59
기존sqlite파일을 삭제하고 다시 실행하면 새로운sqlite이 만들어지는것을 확인할수있음
app.py
# 따로설치가 필요없는 sqlite3를 사용하려면 파일만 지정해주기때문에 os필요
import os
from flask import Flask, render_template
from models import db
# # db클래스만들기(test)
# class Test(db.Model):
# __tablename__ = 'test_table'
# id = db.Column(db.Integer, primary_key = True)
# name = db.Column(db.String(32), unique=True)
# #db생성
# db.create_all()
#app.py를 실행하면 db에 필요한것들은 sqlalchemy가 다해줌~ db.sqlite만들어짐
app = Flask(__name__)
@app.route('/')
def hello():
return render_template('hello.html')
# 기존에는 플라스크명령어로실행했는데
# 파이썬 명령어로 실행할수있게 해보자
if __name__ == "__main__":
# 현재경로를 프로젝트 절대경로로 사용
basedir = os.path.abspath(os.path.dirname(__file__))
dbfile = os.path.join(basedir, 'db.sqlite')
#내가 사용할 데이터베이스 URI
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + dbfile
#요청이 끝날때마다 커밋한다.->db반영
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
#버전상관없게 처리
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
# 초기화
db.init_app(app)
# models.py에 db = SQLAlchemy(app)여야하는데 app이 없으니까 여기서함
db.app = app
# db실행
db.create_all()
app.run(host='127.0.0.1', port=5000, debug=True)
models.py
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
# 1.회원정보를 만들어보자
class FastCampusUser(db.Model):
__tablename__ = "FastCampusUser"
id = db.Column(db.Integer, primary_key = True)
password = db.Column(db.String(64))
userid = db.Column(db.String(32))
username = db.Column(db.String(8))
반응형