[Django기초] 개발일지

손성수·2023년 4월 3일
0

Django

목록 보기
1/17

오늘 배운 것

  • Django
    백엔드 프레임 워크

  • 모듈
    소프트웨어 코드의 일부를 재사용 하기 위한 작은 단위
    변수,함수,클래스,파이썬에서의 모듈은 .py

  • 라이브러리
    소프트웨어 개발에 자주 사용되는 기능을 모아 재사용성을 높이는 도구
    모듈의 집합으로 구성됨, 별도의 설치과정 필요

  • 프레임워크
    애플리케이션의 구조,규칙 틀을 제공
    개발자가 애플리케이션 개발에 집중 할 수 있또록 돕는 도구,
    특정 도메인에 특화된 기능 제공
    ex)Django,Flask 등등..

  • 모듈
    • 코드의 일부를 재사용하기 위한 작은 단위
  • 라이브러리
    • 자주사용되는 기능을 모아 재사용성을 높인 도구
  • 프레임워크
    • 애플리케이션 개발에 지원하는 구조와,규칙을 제공
    • 관리자 페이지 admin제공
    • 보안 기능 기본 제공




Django

용어 정리

  • 클라이언트
    사용자가 요청(url)을 보내는곳
    내컴퓨터,크롬 등등
  • 서버
    요청을 받아서 응답해주는곳
  • API
    데이터를 어떻게 주고받을지 정한 약속




웹의 동작 구조

클라이언트가 서버에게 필요한 정보를 요청(Request)
서버는 요청이 들어온 API를 확인하고 그에 맞는 HTML 혹은 data를 응답(Response)

  • 페이지를 받는 경우 : HTML,CSS,Javascript가 적절하게 섞인것을 받음
    ex)네이버,구글 등등의 페이지를 보는 경우
  • 데이터만 받는 경우 : 페이지나 화면은 필요 없으며, '데이터'만을 받음




프레임워크 비교

  • FranmeWork
    개발을 도와주는 하나의 틀
  • Flask,Pyramid
    • 경량 프레임워크
    • 서버를 만들기 위한 최소한의 기능만 제공
    • 로그인,DB등의 관리를 직접 해주어야 한다.
    • 관리자 페이지 구축을 따로 해주어야 한다.
  • Django
    • 거대한 프레임워크
    • 서버를 만들기 위한 다양한 기능제공
    • 많은 유틸(기능)들이 이미 만들어져 있음
    • DB,로그인,Admin,패스워드,암호화 등 이미지 제공
    • 커뮤니티 문서가 잘 되어 있다.




Django의 MVT패턴

사용자 > URL요청 > View > Model(ORM) > DB
DB > Model > Template(생략가능) > 사용자

  • Model
    • 데이터 베이스의 모델(ORM)
    • 저장하고 사용되는 형태
  • Template
    • 사용자에게 보여지는 부분,화면
  • View
    • 프로그램이 동작하는 부분
    • 서비스들이 존재하는곳
  • ORM
    • 데이터 베이스의 형태를 클래스 형태로 보여준다.
    • 쿼리(데이터베이스를 다루는 언어)를 작성하지 않아도 된다.
    • 데이터를 가져오고,저장,추가,삭제 기능이 있다.




Pycharm Django 파일 생성하기.

    1. Django파일 생성하기

  1. 파일 탐색기의 파일 확인
  • init.py
    추가되는 모듈/기능들을 관리

  • settings.py
    장고 프로젝트의 전체적인 환경 설정

  • urls.py
    API를 담당

  • templates
    작성한 HTML 파일이 들어가는 곳

장고 페이지 출력

views.py 생성

from django.http import HttpResponse
# 데이터 전송 헤더파일

def base_response(request):
    return HttpResponse("안녕하세요! 장고의 시작입니다!")

urls.py로 이동

from django.contrib import admin
from django.urls import path
from . import views
urlpatterns = [
    path('admin/', admin.site.urls),
    path('test'/,views.base_response,name = "first_test"),
]
  • test란s url로 base_response라는 함수와 연결

로컬 호스트 주소
http://127.0.0.1:8000/test/

  • html 파일 생성

from django.http import HttpResponse
from django.shortcuts import render
# html 파일을 보여주는 헤더파일

def base_response(request):
    return HttpResponse("안녕하세요! 장고의 시작입니다!")

def first_view(request):
    return render(request,'my_test.html')
#test html을 보여주는 역할을 하는 함수

urls.py 수정

from django.contrib import admin
from django.urls import path
from . import views
urlpatterns = [
    path('admin/', admin.site.urls),
    path('test/',views.base_response(),name = "first_test"),
    path('first/',views.first_view,name = 'first_view'),
    # first파일 경로 추가
]
profile
더 노력하겠습니다

0개의 댓글

관련 채용 정보