728x90
728x90

  플라스크 변수 사용  

- 플라스크 서버에서는 html에 변수를 만들어 서버 python에서 값을 넘겨 줄 수 있습니다.

- 변수 사용에는 아래의 코드를 원하는 위치에 추가해 사용합니다.

{{변수명}}

- 변수에 값을 주려면 서버 함수에서 render_template에 변수명에 값을 대입하면 됩니다.

return render_template('hello.html',변수명 = 값)

  예제  

- hello.html 파일을 생성하고, <head>태그 -> <title>태그 안에 변수를 선언합니다.

- <body> 태그 안에 <h1>태그를 추가 하고 그안에 변수를 똑같이 선언해 주겠습니다.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>{{title}}</title>
</head>
<body>
    <h1>
        {{title}}
    </h1>
</body>
</html>

- 서버 코드에서 /hello 주소를 라우팅하고 hello() 함수를 선언 return 값으로 render_template('hello.html',title='hello')

를 추가합니다.

 

@app.route("/hello")
def hello():

    return render_template('hello.html',title='hello')

- 이제 /hello로 접속해서 확인해 보겠습니다.

 

- 잘 적용 되었네요!!!!

728x90
728x90

  Flask(플라스크)  

- 파이썬 마이크로 웹 프레임 워크

- 심플함(Simple)과 확장성(Extensible)을 가지고 있습니다.

- Django가 많은 기능들을 포함하여 손쉽게 쓸 수 있다면 Flask는 필요한 기능들을 만들어 주어야 하지만, 그만큼 가볍고 확장성이 크다는 장점이 있습니다.

  환경  

- Window 10

- Anaconda (아나콘다)

- python 3.7 (파이썬 3.7버전)

- 파이참

- Flask(플라스크)

등을 사용하여 Flask를 이용한 웹 서버를 만들고 , 웹 사이트를 제작해보도록 하겠습니다.

  플라스크 설치  

- 플라스크 설치는 아나콘다 가상환경에서 진행됩니다.

conda install flask

또는

pip install flask

명령어를 통해서 플라스크를 설치해 줍니다.

  파이참 실행  

- 새 프로젝트를 생성하고 interprinter로 아나콘다 가상환경에 설치된 파이썬3.7번전을 세팅해줍니다.

- 원하는 디렉토리에 flask_server폴더를 생성해 줍니다.

  app.py 생성  

- flask_server 디렉토리 하위에 app.py 파일을 생성합니다.

- flask 를 import 시키고 'Hello World!'를 출력하는 코드를 작성해 줍니다.

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

  플라스크 서버 시작  

- 파이참의 터미널을 통해서 플라스크를 실행합니다.

flask run

명령어를 입력하면 서버가 실행되고 url 링크가 나타나고 클릭하면 해당 url의 웹사이트가 브라우저로 표시 되게 됩니다.

  플라스크 실행 다른 방법  

- flask run으로 플라스크를 실행하는 방법 이외에도 플라스크를 실행하는 방법이 있습니다.

- 위에서 작성했던 코드의 마지막에 아래의 코드를 추가해 줍니다.

if __name__ == '__main__':
    app.run()

- 코드 -

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == '__main__':
    app.run()

- 파이참의 run을 통해서 실행하는 방법

- 터미널에서 python app.py 명령어를 통해서 실행하는 방법

python app.py

728x90
728x90
728x90

+ Recent posts