728x90
아모르겠고 장고 가보자고
그렇게 장고를 시작한지 언.. 1일...
아 뭔가 할만한거같기두 하면서도 모르겠는부분..
긍정이라고는 없어진 4주차...
긍정적인 내일을 위해서
오늘도 이렇게 야무지게 TIL 씁니다.
화.이.팅
[목차]
01. 웹의 동작 순서 및 개념
02. Python의 Web Framework!?
03. Django 알아보기
04. 장고 프로젝트 만들기
01. 웹의 동작 순서 및 개념
1) 용어 정리 - 클라이언트 / 서버 / API
- 클라이언트 : '요청을 보내는 곳' 이라고 생각 하시면 됩니다. 주로 '나', '내 컴퓨터' 혹은 '크롬'을 클라이언트라고 얘기 합니다.
- 서버 : '요청을 받아서 응답 해 주는 곳' 이라고 생각 하시면 됩니다. 우리가 인터넷에서 웹페이지, 로그인등의 행동을 하고 난 후에 이루어지는 많은 과정들을 처리 해 줍니다.
- API : 데이터를 어떻게 주고 받자! 라고 정한 약속 이라고 생각하시면 됩니다.
2) 웹의 동작 구조
- 클라이언트가 서버에게 필요한 정보를 요청(Request)합니다.
- 서버는 요청이 들어온 API를 확인하고 그에 맞는 HTML 혹은 data를 응답(Response) 해 줍니다.
- 페이지를 받는 경우
- HTML, CSS, Javascript가 적절하게 섞여있는 페이지를 받는 경우입니다.
- 우리가 흔히 접속하는 구글, 네이버 등등의 페이지를 보는 경우가 포함 되어 있습니다.
- 데이터만 받는 경우
- 페이지나 화면은 크게 필요 없고, '데이터' 만을 받고 싶은 경우도 있습니다.
- 데이터 베이스에서 자료를 가져오거나, 다른 사람이 만든 데이터를 가져 올 때의 경우가 포함 되어있습니다.
02. Python의 Web Framework!?
1) 파이썬 웹 프레임워크란?
웹 프레임워크란?
- 프레임워크는 개발을 도와주는 하나의 틀
- → '틀'은 결과물을 일정한 형태로 만들 수 있도록 도와줍니다
- → 때문에 우리가 비슷한 방법과 방식으로 완성 된 형태를 만들 수 있어요
2) 파이썬 웹 프레임워크의 종류
- 최소한의 기능만 제공하는 형태 : Flask, Pyramid
- 경량 프레임워크
- 최소한의 기능들만 제공
- 로그인, DB등의 관리를 직접해 주어야 한다.
- 관리자 페이지 구축을 따로해 주어야 한다.
- 이미 많은 기능들을 제공하고 있는 형태 : Django
- 거대한 프레임워크
- 많은 유틸(기능)들이 이미 만들어져있음
- DB, 로그인, Admin, 패스워드 암호화 등 이미 제공
- 커뮤니티와 문서가 잘 되어있다.
03. Django 알아보기
1) 장고의 MVT 패턴
- M (Model)
- 데이터베이스의 모델 (ORM)
- 저장되고 사용되는 데이터의 형태
- T (Template)
- 사용자에게 보여지는 부분
- 화면
- V (View)
- 실질적으로 프로그램이 동작하는 부분
- url을 요청하고 응답하는 그 사이에 일어나는 '서비스'들이 존재하는 곳
2) ORM 이란?
Django의 ORM은 Python으로 데이터베이스 클래스 모델을 만들고, 만든 모델을 바탕으로 자동으로 데이터베이스를 다룰 수 있도록 도와줍니다.
예제) 글쓰기 모델
class Post:
id = IntegerField()
title = CharField()
author = CharField()
context = TextField()
04. 장고 프로젝트 만들기
* Visual Studio Code사용
1) 장고 설치
python3 -m pip install django #python -> python3
2) 장고 버전 확인
python3 -m django --version
3) 장고 프로젝트 만들기
django-admin startproject <프로젝트명>
예시) <프로젝트명> = mysite
- 외부 <프로젝트명> - 프로젝트의 컨테이너 입니다. * 원하는 이름으로 변경 가능
- 내부 <프로젝트명> - 프로젝트의 실제 파이썬 패키지 입니다. (예시 : mysite.urls)
- mysite/__init__.py - 현재 디렉토리를 파이썬 패키지로 인식하기 위한 빈 파일
- (중요)mysite/settings.py - 현재 장고 프로젝트의 설정 / 구성
- (중요)mysite/urls.py - 현재 장고 프로젝트의 URL 선언
- mysite/wsgi.py - WSGI 호환 웹 서버가 프로젝트를 제공하기 위한 진입 파일
- manage.py - 현재 장고 프로젝트와 다양한 방식으로 상호 작용하는 명령 유틸리티
4) 장고 서버 실행
- 외부 <프로젝트명> 경로에서 아래의 명령문 실행
python3 manage.py runserver # 127.0.0.1:8000
python3 manage.py runserver 5000 # 127.0.0.1:5000
python3 manage.py runserver 192.168.0.10:5000 # 192.168.0.10:5000
오늘은 여기까지..
728x90
반응형
'Sparta Coding Club > Today I Learned [TIL]' 카테고리의 다른 글
[TIL] #DAY - 019 - 파이썬 장고 실무 기초 (3) (내일배움캠프AI 3기) (1) | 2022.09.26 |
---|---|
[TIL] #DAY - 018 - 파이썬 장고 실무 기초 (2) (내일배움캠프AI 3기) (1) | 2022.09.24 |
[TIL] #DAY - 016 - 자료구조, 알고리즘 (2) (내일배움캠프AI 3기) (1) | 2022.09.21 |
[TIL] #DAY - 015 - 자료구조, 알고리즘 (1) (내일배움캠프AI 3기) (1) | 2022.09.20 |