ORM(object relational mapping) 방식 데이터베이스에 데이터를 저장하는 테이블을 파이썬 클래스로 만들어 관리하는 기술이다. 개발자가 쿼리를 직접 작성하지 않아도 데이터베이스의 데이터를 처리할 수 있다. 쿼리를 이용한 새 데이터 삽입 예 insert into question (subject, content) values ('안녕하세요', '가입 인사드립니다 ^^'); ORM을 이용한 새 데이터 삽입 예 question1 = Question(subject=’안녕하세요’, content='가입 인사드립니다 ^^') db.session.add(question1) 데이터베이스 종류에 상관 없이 일관된 코드를 유지할 수 있어 프로그램 유지 보수가 쉼다. ORM 라이브러리 설치 (Flask-Mi..
Backend/Server
블루프린트 새로운 URL 매핑이 필요할 때마다 라우팅 함수를 create_app 함수 안에 계속 추가해야 한다. 이를 해결하고자 URL과 함수의 매핑을 관리하기 위해 사용하는 것이 블루프린트다. 블루프린트 생성 view 디렉터리 생성 main_views.py 파일 생성 [projects\myproject\pybo\views\main_views.py] from flask import Blueprint bp = Blueprint('main', __name__, url_prefix='/') @bp.route('/') def hello_pybo(): return 'Hello, Pybo!' create_app 함수 안에 있던 hello_pybo 함수를 옮긴 것이다. @app.route -> @bp.route bp..
pybo.py를 __init__.py로 변경하기 (myproject) c:\projects\myproject> mkdir pybo (myproject) c:\projects\myproject> move pybo.py pybo/__init__.py (myproject) c:\projects\myproject>flask run * Serving Flask app "pybo" (lazy loading) * Environment: development * Debug mode: on * Restarting with stat * Debugger is active! flask run 명령어는 반드시 프로젝트 홈 디렉터리에서 실행해야 한다. (C:\project\myproject) 이전 내용에서 pybo는 pybo.p..
애플리케이션 파일 만들기 [projects\myproject\pybo.py] from flask import Flask app = Flask(__name__) @app.route('/') def hello_pybo(): return 'Hello, Pybo!' app = Flask(__name__) 플라스크 애플리케이션을 생성하는 코드 __name__ 변수에 모듈명이 담긴다. 해당 코드에서는 pybo.py라는 모듈이 실행되는 것으로 __name__ 변수에는 pybo라는 문자열이 담긴다. @app.route('/') URL과 플라스크 코드를 매핑하는 데코레이터 / URL이 요청되면 플라스크는 hello_pybo 함수를 실행 데코레이터? 기존 함수를 변경하지 않고 추가 기능을..
명령 프롬프트 왼쪽에 (myproject)가 있으면 가상 환경 가상 환경 디렉터리 생성 C:\Users\pahkey> cd \ C:\> mkdir venvs C:\> cd venvs 가상 환경 생성 C:\venvs> python -m venv myproject 가상 환경 진입 C:\venvs> cd C:\venvs\myproject\Scripts C:\venvs\myproject\Scripts> activate (myproject) C:\venvs\myproject\Scripts> 가상 환경 벗어나기 (myproject) C:\venvs\myproject\Scripts> deactivate C:\venvs\myproject\Scripts> 가상 환경에서 플라스크 설치하기 (myproject) C:\ven..