일단 플라스크 프로젝트는 만들기 위해서는 가상 환경을 만들어준다.
가상 환경을 만들어 주는 이유는 인터넷에서 다운로드한 파이썬 라이브러리들이 충돌을 일으키는 것을 방지하기 위해서
-> 이렇게 하게 되면 기존의 다른 파이썬 프로그램에는 영향을 주지 않는다.
# 1 루트 디렉토리 생성
: 가상환경들을 관리하는 폴더 ( 필수 X )
필자는 workspace 라는 이름으로 쓰고 있음
mkdir workspace
mkdir [디렉토리 명] : 디렉터리 명으로 폴더 생성됨
# 2 가상 환경 만들기
cd workspace # 위에서 만든 디렉토리로 이동
python3 -m venv flask2 # 필자는 flask를 사용한 2번째 프로젝트였기 때문에 flask2라고 지었음
python3 -m venv [가상환경 이름] : 가상 환경 이름으로 가상 환경이 만들어짐
# 3 가상 환경 활성화
# ver 1
cd flask2 # 가상환경 폴더로 이동
source bin/activate # bin 폴더에 있는 activate 명령어로 가상환경 활성화
# ver 2
# 가상환경 폴더에 들어가지 않고
#. [가상환경 폴더명]/bin/activate
# 앞에 .(온점)을 꼭 찍어줘야함
. flask2/bin/activate
위 명령어를 입력하고 나면 가상환경 이름으로 가상 환경이 활성화된 것을 볼 수 있다.
# 4 Flask 설치
: 가상 환경에 flask 설치하기
간단한 rest API를 주고 받는 API sever를 만들어볼 것이기 때문에 flask-restx도 함께 설치
pip3 install flask
pip3 install flask-restx
위 명령어를 작성하고 장고가 설치되면 pip 을 업그레이드하라고 아래와 같이 뜰 수도 있다.
WARNING: You are using pip version 19.2.3, however version 21.2.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
pip install --upgrade pip
명령어를 사용해서 업그레이드 해도 되고 안 해도 된다.
# 5 Flask 프로젝트 생성
프로젝트를 진행할 폴더 [ 필자의 폴더명 : CRUDProject ] 를 생성한 뒤 안에 `app.py`라는 파일을 만들어 준다.
from flask import Flask
from flask_restx import Api, Resource # 빨간 줄이라도 상관없음
app = Flask(__name__) # Flask 객체 선언
api = Api(app) # Flask 객체에 Api 객체 등록
@api.route('/memo') # '/memo'라는 경로로 이동
class HelloWorld(Resource):
def get(self): # GET 요청시
return {"first": "toy project"}
if __name__ == "__main__":
app.run('0.0.0.0', port=5000, debug=True)
파일 안에 위와 같이 작성해 준 뒤 터미널에서 해당 폴더에 들어가서 아래와 같이 입력하면
아래와 같은 터미널 창이 나온다.
링크가 된 부분인 http://192.168.0.10:5000에 접속하게 되면
그렇게 하면 위와 같이 나오는 것을 확인할 수 있다.
폴더 내부는 위와 같이 이루어져 있다.
위와 같은 화면을 얻을 수 있다. 오른쪽 상단에 있는 Try it Out을 누르면
위와 같은 화면을 얻을 수 있다.
'CODING > Python' 카테고리의 다른 글
[Python] 딕셔너리와 리스트 비교 / Dictionary | List (0) | 2022.07.30 |
---|---|
[Python/Flask] flask-restx를 이용한 CRUD구현 (2) : 기본 설정 및 파일 분리하기 (0) | 2021.11.24 |
[Python] - 딕셔너리 key, value 서로 위치 바꾸는 법 (0) | 2021.11.05 |
[Python/Django] Mac 장고 venv로 가상환경 생성 (0) | 2021.08.08 |
[데이터/Python] # 3 비표준화계수란 (2) | 2020.08.08 |
댓글