본문 바로가기

멋쟁이사자처럼 동아리활동

(5)
[Fast api] 이벤트 플래너 만들기 part2 (SQLModel 사용 DB 구축) 기존에 만들어 두었던 database, models, routes, main.py를 복사해서 저장해두겠습니다. (지금은 sql 데이터 베이스와 연동할때 활용, 저장한 파일은 나중에 몽도 db와 연동할때 또 활용할 예정 입니다.) 그럼 아래와 같은 명령어를 입력해주도록 하겠습니다. (가상환경 가동 후) pip install sqlmodel # 테이블 테이블은 DB에 저장된 데이터를 가지고 있는 객체 입니다. SQL 모델을 사용해서 테이블을 생성하려면 태이블 구조(모델)을 만들어야 합니다. 기존에는 pydantic 모델을 테이블 정의 하는데 사용했지만, 이제는 SQLModel의 서브 클래스를 활용해서 정의하도록 하겠습니다. 아래는 테이블을 생성하는 예시 입니다. class Event(SQLModel, tab..
[FAST API] 이벤트 플래너 만들기 part 1 FastAPI를 잘 사용하면 쉽게 애플리케이션을 만들수 있습니다. 하지만, 애플리케이션의 구조와 기능이 복잡해지면 적절한 구조화 또한 필요하게 됩니다. 구조화란? 에플리케이션 컴포넌트를 형식에 맞추어서 정리하는 것입니다. 여기서 형식 --> 모듈 이라고 하며, 모듈화는 애플리케이션 코드와 콘텐츠의 가독성을 높여줍니다. 덕분에 개발 속도와 디버깅 속도를 더 빠르게 할수 있다는 장점이 있습니다. 우선 기존에 사용하는 가상환경을 가져오도록하겠습니다. # 기존에 작업하던 가상환경실행후 진행합니다. pip freeze > requirments.txt requirments.txt를 복사해서 바탕화면에 planner 폴더(애플리케이션 폴더)를 생성한뒤 작업을 실행하도록 하겠습니다. 이후 가상환경 세팅을 한뒤 requ..
[FAST API] 기초정리하기 part 2 이전 part 1에서는 id, item 모두 반환이 되도록 하였습니다. 하지만 id는 필요 없고 item만 필요로 하는 경우가 있습니다. 그럼 어떻게 해야 할까요? 응답 모델을 만들어서 응답 모델에 해당하는 필드만 반환할수 있도록 하면 됩니다. 그럼 응답 형식을 지정하는 방법을 알아보도록 하겠습니다. model.py에 새로운 모델을 추가 해보도록 하겠습니다. # model.py from pydantic import BaseModel from typing import List class Todo(BaseModel): id: int item: str class TodoItem(BaseModel): item: str # 아래 config는 예시 형식이라고 생각하면 됩니다. class Config: schema..
[FAST API] 기초정리하기 part 1 # 교재 1장 # 가상환경 만들기 python3 -m venv Vertual_env # requirements.txt 만드는법 (가상환경 가동후 실행하기) pip freeze > requirments.txt # requirements.txt 있는거 그대로 설치하기 pip install -r requirements.txt # fastapi 모듈 설치 (애플리케이션 구축 프레임워크), uvicorn 설치 (애플리케이션 비동기 방식 실행 & 서버 게이트웨이 인터페이스), 스탠다드를 설치해야 많은 기능을 사용할수 있다. pip install fastapi uvicorn[standard] # api.py 생성후 적어주기 from fastapi import FastAPI # 인스턴스 생성하기 app = FastAP..
[Django] 기초 Part 1 (미완성) ------------------------------------ 우선 장고는 파이썬으로 동작한다. 구글에서 파이썬 패키지를 설치후, vscode 에서 확장 --> 파이썬 인터프리터를 설치(이때 path 설정 하는 체크 박스를 눌러주자 안그러면 python3라고 이후에 명령어들을 저장해줘야 한다.) 정상적으로 설치를 확인하려면 아래의 명령어를 입력한다. python --version 이후에는 가상환경을 만들어 줘야 한다. 가상환경은 뭐냐? 독립적인 공간이라고 생각하자. 여기서는 무슨짓을 해도 현실 세계에는 영향을 주지 않는다. 가상환경을 만들고 거기서만 백엔드 작업을 하므로써 패키지들의 충돌 방지와 깔끔한 관리가 가능하다. 아래의 명령어는 가상환경을 생성하는 코드이다. 참고로 이제부터는 vscode 터미..