<웹의 동작 순서 및 개념>
- 용어 정리
- 클라이언트: 요청을 보내는 곳
- 서버: 요청을 받아서 응답해 주는 곳
- API: 데이터를 주고 받는 방식을 정한 것
- 웹의 동작 구조
- 페이지를 받는 경우: HTML, CSS, Javascript가 적절하게 섞여있는 페이지를 받는 경우. 구글, 네이버 같은 페이지를 보는 경우라고 보면 됨
- 데이터만 받는 경우: 페이지나 화면은 크게 필요없고, '데이터'만을 받고 싶은 경우. 데이터베이스에서 자료를 가져오거나 다른 사람이 만든 데이터를 가져올 때 사용함
<Python의 Web Framework>
- 프레임워크는 개발을 도와주는 하나의 틀이라고 보면 됨
- 최소한의 기능만 제공하는 형태와 이미 많은 기능들을 제공하고 있는 형태가 있음
- 전자는 flask, pyramid 같은 프레임워크고, 후자는 django 같은 프레임워크임
<Django 알아보기>
- MVT 패턴
- M (Model): 데이터베이스의 모델(ORM), 저장되고 사용되는 데이터의 형태
- T (Template): 사용자한테 보여지는 부분, 화면
- V (View): 실질적으로 프로그램이 동작하는 부분, url을 요청하고 응답하는 그 사이에 일어나는 '서비스'들이 존재하는 곳
- ORM이란?
- Python으로 데이터베이스 클래스 모델을 만들고, 만든 모델을 바탕으로 자동으로 데이터베이스를 다룰 수 있도록 도와줌
- 예제:
class Post:
id = IntegerField()
title = CharField()
author = CharField()
context = TextField()
<숙제>
- 숙제 답안
- project_01.py
my_station=['야탑','모란','이매','선릉','한티','왕십리']
def station_list(data):
for i in data:
print(i)
station_list(my_station)
def station_point(data):
for i in data:
if i == "선릉":
print(i)
station_point(my_station)
# 출력화면
# 야탑
# 모란
# 이매
# 선릉
# 한티
# 왕십리
# 선릉
- project_02.py
class Post:
id = '',
title = '',
author = '',
content = '',
my_post = Post()
my_post.id = 'goodminjeong'
my_post.title = '게시글 작성'
my_post.author = '구민정'
my_post.content = '게시글 작성하기 숙제!!'
print(my_post)
print('id : ', my_post.id)
print('title : ', my_post.title)
print('author : ', my_post.author)
print('content : ', my_post.content)
# 출력화면
# <__main__.Post object at 0x00000213FB458210>
# id : goodminjeong
# title : 게시글 작성
# author : 구민정
# content : 게시글 작성하기 숙제!!