개발일지/스파르타코딩클럽

파이썬 장고 실무 기초 1주차

마이구미+ 2023. 4. 4. 16:00

<웹의 동작 순서 및 개념>

- 용어 정리

  • 클라이언트: 요청을 보내는 곳 
  • 서버: 요청을 받아서 응답해 주는 곳
  • API: 데이터를 주고 받는 방식을 정한 것

- 웹의 동작 구조 

  • 페이지를 받는 경우: HTML, CSS, Javascript가 적절하게 섞여있는 페이지를 받는 경우. 구글, 네이버 같은 페이지를 보는 경우라고 보면 됨
  • 데이터만 받는 경우: 페이지나 화면은 크게 필요없고, '데이터'만을 받고 싶은 경우. 데이터베이스에서 자료를 가져오거나 다른 사람이 만든 데이터를 가져올 때 사용함

웹의 동작 구조


<Python의 Web Framework>

  • 프레임워크는 개발을 도와주는 하나의 틀이라고 보면 됨
  • 최소한의 기능만 제공하는 형태와 이미 많은 기능들을 제공하고 있는 형태가 있음
  • 전자는 flask, pyramid 같은 프레임워크고, 후자는 django 같은 프레임워크임

Django VS. Flask, Pyramid


<Django 알아보기>

- MVT 패턴

  • M (Model): 데이터베이스의 모델(ORM), 저장되고 사용되는 데이터의 형태
  • T (Template): 사용자한테 보여지는 부분, 화면
  • V (View): 실질적으로 프로그램이 동작하는 부분, url을 요청하고 응답하는 그 사이에 일어나는 '서비스'들이 존재하는 곳

- ORM이란?

  • Python으로 데이터베이스 클래스 모델을 만들고, 만든 모델을 바탕으로 자동으로 데이터베이스를 다룰 수 있도록 도와줌
  • 예제:
class Post:
    id = IntegerField()
    title = CharField()
    author = CharField()
    context = TextField()

<숙제>

1주차 강의 숙제

- 숙제 답안

  • 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 :  게시글 작성하기 숙제!!