상세 컨텐츠

본문 제목

[FLASK] 플라스크 로컬 서버 실행시키기

Python/Flask

by TUZA 2022. 8. 6. 15:27

본문

# flask 2.xx 


from flask import Flask

app = Flask(__name__)
# app = Flask(__name__)은 플라스크 애플리케이션을 생성하는 코드이다. 이 코드에서 __name__이라는 변수에는 모듈명이 담긴다. 
# 즉, 이 파일이 실행되면 hello.py 라는 모듈이 실행되는 것이므로 __name__ 변수에는 hello 라는 문자열이 담긴다.
# @app.route 는 URL과 플라스크 코드를 매핑하는 플라스크의 데코레이터다. 즉, '/' URL 이 요청되면 플라스크는 hello_world 함수가 실행된다.
# 데코레이터란 기존 함수를 변경하지 않고 추가 기능을 덧붙일 수 있도록 해주는 함수이다.



@app.route("/")
def hello_world():
    return "<p>Hello, World!</p>"



#flask run way!

if __name__ =='__main__':
    print('run')
    app.run(debug=True,port=5051,host='localhost')

#commend
#python xxx.py


flask --app hello --debug run

 

 

📖 참고사항

WARNING: This is a development server. Do not use it in a production deployment.

플라스크는 FLASK_APP 환경 변수가 지정되지 않은 경우 자동으로 app.py 파일을 기본 애플리케이션으로 인식한다.

따라서 xxx.py 파일을 app.py로 만들었다면 FLASK_APP 환경변수를 별도로 지정하지 않아도 된다.

 

circular import error

: app 객체를 전역으로 사용하면 프로젝트 규모가 커질수록 문제가 발생할 확률이 높다. 그 중 순환참조에러가 대표적이다. *순환 참조란 A 모듈이 B 모듈을 참조하고 B모듈이 다시 A 모듈을 참조하여 발생하는 에러이다.

이러한 문제를 예방하기 위해서 공식문서에서는 애플리케이션 팩토리 를 사용하라고 한다.

반응형

'Python > Flask' 카테고리의 다른 글

[FLASK] 플라스크 리퀘스트 메소드  (0) 2022.08.06
[FLASK] 플라스크 기본 라우팅  (0) 2022.08.06
[FLASK] FLASK  (0) 2022.08.06

관련글 더보기