🌶️ Flask, 질문하며 배우기

파이썬 마이크로 웹 프레임워크 · 선행: 파이썬 · 로컬에서 flask run

수업 진행

🤖

질문

프롬프트를 LLM에 복사

💻

실행

로컬 Flask 서버로 확인

👩‍🏫

리뷰

라우팅·템플릿·API 정리

앞: 라우트·템플릿 · 뒤: REST·Jinja·실전 프로젝트

1-1. 웹 서비스

🤖 AI에게 물어보자
풀스택 프레임워크와 마이크로 프레임워크 차이를 Flask·Django 예로 설명해줘. 웹 서비스가 무엇인지 한 문단으로.

1-2. Hello World

🤖 AI에게 물어보자
Flask로 최소 Hello World 앱을 만들고 python으로 실행하는 방법을 보여줘. __name__ 의미도 설명해줘.
from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello():
    return 'Hello, Flask!'

if __name__ == '__main__':
    app.run(debug=True)
👩‍🏫 선생님 리뷰
  1. @app.route 로 URL과 함수를 연결합니다
  2. debug=True 는 개발용 — 배포 시 끄세요

1-3. 라우팅

🤖 AI에게 물어보자
Flask에서 여러 URL 경로를 등록하는 예제와 route 데코레이터 사용법을 알려줘.

1-4. URI 변수

@app.route('/user/<name>')
def greet(name):
    return f'{name}야 안녕'

@app.route('/<tag>')
def heading(tag):
    return f'<{tag}>Hello</{tag}>'

1-5. render_template

🤖 AI에게 물어보자
Flask render_template로 templates/index.html을 렌더링하는 예제와 templates 폴더 구조를 설명해줘.

1-6. HTTP 메서드

🤖 AI에게 물어보자
Flask에서 GET/POST 처리, request.form, request.args 사용 예제를 보여줘.

1-7. REST API 고급

🤖 AI에게 물어보자
Flask로 JSON을 반환하는 간단한 REST API(GET 목록, POST 생성) 예제를 짜줘. jsonify 사용.

1-8. Jinja2 고급

🤖 AI에게 물어보자
Jinja2에서 변수 출력, if, for, 템플릿 상속(extends/block) 예제를 보여줘.

1-9. 실습 — 영화순위 웹

🤖 AI에게 물어보자
수집한 영화 순위 리스트를 Flask 템플릿의 table로 보여주는 구조를 제안해줘.

1-10. 세션 · 쿠키 (ETC)

session, cookie 설정·읽기 — AI에게 “Flask 로그인 세션 최소 예제”를 물어보세요.

2-1. HTML/CSS/JS 선행

w3schools HTML/CSS/JS · 자기소개 페이지를 먼저 만든 뒤 Flask에 붙입니다.

2-2. Bootstrap 테마 적용

🤖 AI에게 물어보자
무료 Bootstrap 포트폴리오 템플릿을 Flask static/templates 구조에 넣는 방법을 설명해줘.

2-3. 날씨예보 웹

🤖 AI에게 물어보자
기상청 mid-term RSS XML을 파싱해 Flask에서 HTML table로 출력하는 흐름을 제안해줘.

2-4. 공공 API · 싱글 페이지

🤖 AI에게 물어보자
공공데이터 포털 미세먼지 API를 requests로 호출해 Flask 페이지에 표시하는 구조를 짜줘. 인증키는 환경변수로.

2-5. 4대질병 웹 조회

🤖 AI에게 물어보자
지역·날짜·질병을 form으로 받아 조회 결과를 table로 보여주는 Flask 앱 구조를 제안해줘.

2-6. 카카오톡 나에게 메시지 고급

🤖 AI에게 물어보자
카카오 REST API로 '나에게 메시지 보내기' 할 때 code → token → 전송 흐름을 단계로 설명해줘. Flask 콜백 라우트 역할도.
developers.kakao.com 에서 앱 등록 · REST 키 · Redirect URI 필요