Web/Flask

Flask 설치부터 HTML 파일과 url 연결까지 Flask 기본 사용법 알아보기

daeunnniii 2021. 7. 24. 17:10
728x90
반응형

1. Flask 프레임워크란?

Flask는 Micro web application framework로 파이썬의 웹프레임워크중 Django와 더불어 가장 많이 쓰이는 웹 애플리케이션 프레임워크이다.

▶ Django와 Flask의 차이점

Django full stack web framework로 모든 기능이 이미 준비되어있고 개발자가 필요에 따라 사용하면 되지만, Flask최소한의 기능만을 제공하여 데이터 베이스 연결 외에도 양식 처리, 보안, 인증 등 모두 개발자가 직접 처리할 수 있다는 점에서 Django 보다 자유도가 높다.

 

2. Flask 설치

방법 1) pip로 flask 패키지 설치

pip3 install flask

 

방법 2) Pycharm에서 설치

Pycharm에서 File>Settings>Project에 Python Interpreter 클릭 후 + 버튼 클릭

그리고 검색창에 flask를 검색한 뒤 Install Package를 눌러 flask 프레임워크를 설치한다.

 

3. Pycharm에 app.py 파이썬 파일 생성

서버를 돌아가게 만드는 파일 이름을 통상적으로 app.py라고 이름을 짓는다.

from flask import Flask
app = Flask(__name__)

@app.route('/')
def home():
    return 'This is Home!'

@app.route('/mypage')
def mypage():
    return 'This is My Page!'

if __name__ == '__main__':
    app.run('0.0.0.0',port=5000,debug=True)

일단 기본적으로 위와 같이 입력 후 코드를 실행시켜준다.

웹 브라우저에서 localhost:5000을 접속하면 다음과 같이 This is Home! 문구가 뜨고,

localhost:5000/mypage에 접속하면 This is My Page! 문구가 잘 뜨는 것을 확인할 수 있다.

4. Project 파일에 static, templates 폴더를 생성

static 폴더에는 css, js 파일 등 정적 파일을 모아두는 곳, templates 폴더에는 html 파일을 담아두는 곳이다.

먼저 templates 폴더에 index.html 파일을 생성하여 임의로 html 코드를 작성해준다.

 

5. 서버에서 클라이언트로 데이터 보내기

다시 app.py로 돌아가서 render_template를 import 해준다.

그리고 home() 함수의 return 값에 render_template('index.html')을 입력해준다.

참고로 render_template의 첫번째 인자html 파일명, 두번째 인자부터 함께 보낼 데이터의 정보를 입력한다. 

from flask import Flask, render_template
app = Flask(__name__)

@app.route('/')
def home():
    return render_template('index.html')

if __name__ == '__main__':
    app.run('0.0.0.0',port=5000,debug=True)

다시 프로젝트를 실행시켜준 뒤 localhost:5000에 들어가면 다음과 같이 작성했던 index.html 파일을 잘 불러오는 것을 확인할 수 있다.

 

 

참고: https://spartacodingclub.kr/

 

728x90
반응형