gcp 서버 띄우기 (+mysql)
secrets.json 파일 작성
mysql에 대한 정보를 저장하기 위함
database.py 파일 작성
secrets.json에 저장된 정보를 바탕으로 DB_URL 작성
models.py 파일 작성
예시로 하나의 테이블을 만들기
class User(Base):
__tablename__ = "user"
id = Column(Integer, primary_key=True, index=True)
user_name = Column(String(32))
user_email = Column(String(32))
mysql -uroot -p
use [secrets.json에 작성한 테이블명]
show tables
models.py에 테이블 추가 작성
db 구조를 짜고 원하는 테이블을 추가로 작성한다.
schemas.py 파일 작성
이걸 먼저 쓸 필요는 없는데 더미데이터를 넣기가 편함
class User(BaseModel):
user_name : str
user_email : str
memos : List[Memo] = []
class Config:
orm_mode = True
@app.post("/users")
async def create_user(request:schemas.User, db:Session=Depends(get_db)):
new_user = models.User(user_name=request.user_name,user_email=request.user_email)
db.add(new_user)
db.commit()
db.refresh(new_user)
return new_point
@app.get("/users")
async def get_all_users(db:Session=Depends(get_db)):
return db.query(models.User).all()