Flask 프로젝트를 만들고 간단하게 구성하는 방법

3822 단어 flask
설치된 종속 패키지

flask
pymysql
flask_script
flask_migrate
flask_sqlalchemy
Flask 프로젝트 만들기(프로젝트 디렉토리 구조)

flaskexample
 |---static
 |---templates
 |---app.py
프로젝트에서 settings 파일을 만들고 설정합니다

setting.py
 
 class DevelopmentConfig:
  DEBUG = True
  SQLALCHEMY_DATABASE_URI=mysql+pymysql:// : @host/ 
  SQLALCHEMY_TRACK_MODIFICATIONS=False
  SQLALCHEMY_ECHO=True
  ENV='development'
  
#   
flaskexample
 |---static
 |---templates
 |---app.py
 |---setting.py
프로젝트에서 apps 파일을 만들고 __init__.py 파일에서 설정

apps.__init__.py
 
 from flask import Flask
 
 import setting
 from exts import db
 
 
 def create_app():
  app = Flask(__name__, template_folser='../templates', static_folder='../static')
  
  app.config.from_object(setting.DevelopmentConfig)
  
  #  ORM
  db.init_app(app=app)
  
  return app

#   
flaskexample
 |---apps
  |---__init__.py
 |---static
 |---templates
 |---app.py
 |---setting.py
프로젝트 폴더 아래에 있는 앱입니다.py에서 설정

app.py
 from flask import Flask
 from flask_script import Manager
 from flask_migrate import Migrate, MigrateCommand

 from apps import create_app
 from exts import db
 from apps.user import user
 
 app = create_app()
 
 #  manage
 manager = Manager(app=app)
 
 #  migrate , manage
 migrate = Migrate(app=app, db=db)
 manager.add_command('db', MigrateCommand)
 
 #  
 app.register_blueprint(user)
 
 
 if __name__ == '__main__':
  manager.run()
exts 파일 만들기, ORM 구성

exts.__init__.py
 
 from flask_sqlalchemy import SQLAlchemy
 
 #  ORM
 db = SQLAlchemy()
 
#   
flaskexample
 |---apps
  |---__init__.py
 |---exts
  |---__init__.py
 |---static
 |---templates
 |---app.py
 |---setting.py
apps._init_.py에서 ORM 구성 초기화(파일에서 이미 구성됨)
앱에서py에migrate 명령 관련 설정 등록(파일에서 설정됨)
apps에서 앱 파일을 만들고 관련 파일을 만듭니다(예를 들어 사용자 앱)

#   
flaskexample
 |---apps
  |---__init__.py
  |---user
   |---__init__.py
   |---view.py
   |---models.py
 |---exts
  |---__init__.py
 |---static
 |---templates
 |---app.py
 |---setting.py
앱에서user.models.py에서 데이터 테이블을 작성하는 정보

user.model
 from exts import db
 
 class User(db.Model):
  username = db.Column(db.String(60), nullable=True)
  password = db.Column(db.String(60), nullable=True)
  ・・・
데이터 마이그레이션 수행

 # 1.  
 python app.py db init
 # 2.  
 Python app.py db migrate
 # 3.  
 python app.py db upgrate

# 2 migrations 
#   
flaskexample
 |---apps
  |---user
   |---__init__.py
   |---models.py
   |---view.py
  |---__init__.py
 |---exts
  |---__init__.py
 |---migrations
  |---versions
   |---9eef46471b52_.py
  |---alembic.ini
  |---env.py
  |---READEME
  |---script.py.mako
 |---static
 |---templates
 |---app.py
 |---setting.py
user에서_init_아래 청사진을 만들고 apps의_init_등록

user.__init__

 from flask import Blueprint
 user = Blueprint("user", __name__)
그 다음에user에서의view.py에서 논리적으로 처리했습니다.
이상은 Flask 프로젝트를 만들고 간단하게 설정하는 방법에 대한 상세한 내용입니다. flask 프로젝트 만들기에 대한 더 많은 자료는 저희 다른 관련 글을 참고하세요!

좋은 웹페이지 즐겨찾기