본문 바로가기

반응형

Programming/Python_Web

(26)
FastAPI - MySQL CRUD 1. 폴더구조 2. 라이브러리 설치 pip install fastapi, uvicorn pip install mysql, sqlalchemy pip install starlette 3. 코드 from sqlalchemy import create_engine from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker, scoped_session user_name = "root" user_pwd = "" db_host = "127.0.0.1" db_name = "project01" DATABASE = 'mysql://%s:%s@%s/%s?charset=utf8' % ( user_name, user..
FastAPI 시작하기 1. 폴더구조 2. 라이브러리 설치 pip install fastapi uvicorn pydantic jinja2 import uvicorn from fastapi import FastAPI, Request from fastapi.responses import HTMLResponse from fastapi.templating import Jinja2Templates from pydantic import BaseModel import requests app = FastAPI() db=[] #---------------------------------------------------------------------------------------------------------- # data models c..
FastAPI - Jinja2로 프론트 적용하기 1. 설치 pip install fastapi uvicorn pip install aiofiles # CSS파일 로딩 pip install jinja2 2. Project 구성 3. 시작명령어 python app.py 4. app.py import uvicorn from fastapi import FastAPI, Request from fastapi.responses import HTMLResponse from fastapi.staticfiles import StaticFiles from fastapi.templating import Jinja2Templates app = FastAPI() templates = Jinja2Templates(directory="templates") app.mount("/s..
Flask강좌6 - 등록/로그인/로그아웃 지금까지 DB 검색 기능에 대해 만들었으나, 사용자 등록, 로그인, 로그아웃 처리를 위해 대대적인 수정이 있겠습니다. 1. users 테이블 구성 우선 시작은 Database 구성부터 하도록 하겠습니다. 지난 members 테이블과는 별도로 사용자 관리를 위한 users 테이블을 생성하도록 하겠습니다. 2.user_model.py 데이터베이스 테이블에 맞춰 User클래스를 생성합니다. 정보는 ID, 이름, 비번이 되겠습니다. from flask_sqlalchemy import SQLAlchemy from datetime import datetime db = SQLAlchemy() class User(db.Model): __tablename__ = 'users' #테이블 이름 : users id = db...
Flask강좌5 - Flask form입력 form을 이용해 입력을 받고, 처리하여, 다시 결과를 보여주는 로직을 구현하겠습니다. 1. localhost:5000/all의 db.html 화면에서 입력 받고, 2. __init__.py에서 라우팅 처리하고, 3. db.html에 결과를 보여줍니다. 1. __init__.py form 으로부터 전달된 이름('nm')을 받아서 temp 변수에 저장하고, query.filter_by로 DB에서 조회한 후, 결과를 members로 저장합니다. 그리고 members의 갯수를 count에 저장합니다. render_template함수를 통해 db.html로 연결이 되는데, 이때 members와 count를 함께 넘겨줍니다. from flask import Flask, render_template, request..
Flask강좌4 - Flask_SQLAlchemy MySQL연동 이번 강좌에서는 ORM 방식으로 Database와 연동하는 방법에 대해 포스팅하겠습니다. ORM은 Object-Relational Mapping 이라고 하여, Database 객체를 객체지향 프로그래밍 언어로 변환하는 기법입니다. (자세한 내용은 다른 포스팅들을 참조하시기 바랍니다.) 그 중에서도 Flask에서 ORM을 구현할 수 있게 해주는 라이브러리가 Flask-SQLAlchemy 입니다. 이 Flask-SQLAlchemy를 이용하여 MySql과 연동해보도록 하겠습니다. 1. Database 자료 생성 아래와 같이 id, name, email, phone, start(datetime), end(datetime)을 필드로 하는 자료를 생성해놓습니다. 2. 라이브러리 설치 먼저 말했듯이 이번 강좌의 메인..
Flask강좌3 - Request 1. Request Event Handler 주요 Request Event Handler(Web Filter)는 아래와 같습니다. @app.before_first_requst : 첫번째 요청을 부를 때 @app.before_request : 매 요청에 대해 router가 받아서 모델이 처리하기 전에 @app.after_request : 응답이 나가기 직전에 (DB Close와 같은 작업 처리) @app.teardown_request : 응답이 나가고 나서 @app.teardown_appcontext : application Context가 끝났을 때 2. Request Parameter # GET request.args.get('q') .....> q파라미터를 GET으로 받음 # POST request...
Flask강좌2 - Global Object: g, Response객체 1. __init__.py 수정 from flask import Flask, g, Response, make_response app = Flask(__name__) app.debug = True #use only debug!! @app.before_request def before_request(); print("before_request!!!") g.str = "한글" @app.route("/gg") def helloworld(): return "Hello World!" +getattr(g, 'str', '111') @app.route("/") def helloworld(): return "Hello Flask World!!!!!!!" @app.route("/res1") def res1(): custo..

반응형