Framework 29

Django - Model

Django - Model 데이터베이스의 구조(layout)와 데이터를 조작하기 위한 필드 및 동작을 포함models.Model을 상속받아 사용하며, 보통 하나의 Model은 하나의 데이터베이스 테이블에 대응   • Database(데이터베이스): 잘 정리된 데이터의 집합 • Query(쿼리): 데이터베이스 조작을 위한 언어 • Schema(스키마): 데이터베이스의 구조와 데이터 간의 관계를 정의한 설계도 • Table(테이블): 데이터를 저장하는 조직화된 집합 (열: 속성/필드, 행: 데이터/레코드/튜플) • Primary Key(PK): 각 테이블의 각 데이터를 유일하게 식별하는 열 →데이터베이스를 Django의 Model을 사용해서 구조화하고 조작!    Django Model 생성하기 앱 내 mo..

Django - URLs

URL 패턴 정의 Django에서 URL 패턴은 urls.py에서 정의되며, 일반적으로 path() 함수를 사용  URL Dispatcher들어온 요청(URL)이 어느 view 함수로 처리되어야 할지를 결정하는 Django의 시스템Django는 URL을 구조적으로 매핑하여 가독성과 유지보수성을 높임  URL 분리와 다중 앱 구성 Multiple Apps 구성• 프로젝트가 복잡해지면 앱 별로 URL과 view를 관리하는 것이 효과적• 각 앱 내부에 urls.py를 추가하여 정리 가능   users 앱 생성python manage.py startapp users  users앱 등록  users 앱 내 urls.py, views.py, templates/profile.html, templates/users.h..

Django - Template System/ Django Template Language(DTL)

Django Template System  Template System Django에서 Template은 데이터를 사용자에게 보여주는 역할을 담당기본적으로 각 앱의 templates 디렉토리 내에 위치하며, Django는 settings.py 파일의 TEMPLATES 설정에서 이 디렉토리를 자동으로 검색  Django Template Language (DTL) Django의 템플릿에서 사용되는 문법Python과 유사하지만 실제 Python이 동작하는 것은 아님   변수(Variable) 변수의 기본 형태{{ variable }} View에서 전달된 context의 데이터를 템플릿에서 접근. 을 사용하여 변수의 속성값에 접근{{object.attribute}}→render()의 세번째 인자인 context..

Django - Template

views.py작성 ulrs.py작성 앱 내부에 templates 폴더 생성(+HTML 템플릿 작성)VScode에서 ! + Tab 기본적인 HTML파일 구조가 생성되는 자동완성 지원  settings.py 확인(TEMPLATES 설정에서 DIRS 및 APP_DIRS 경로 확인      Django 요청과 응답 흐름 HttpRequest → URLs → View → Template → View → HttpResponse    Django에서 클라이언트 요청을 처리하고 응답을 반환하는 흐름1. 요청(Request)• 클라이언트(브라우저)에서 특정 URL로 요청을 보냄• 예: http://127.0.0.1:8000/index/  2. URL 처리 (urls.py)• Django는 요청받은 URL을 기반으로 u..

Django - Client↔Server

클라이언트-서버  클라이언트(Client)서비스를 요청하는 주체 요청(Request)를 보내는 컴퓨터주로 웹 브라우저나 인터넷에 연결된 장치를 의미사용자 PC, 스마트폰 서버(Server)자원을 제공 자원을 관리하고 응답(Response)을 보내는 컴퓨터클라이언트의 요청을 처리하고 응답구글의 데이터 센터 컴퓨터  클라이언트-서버의 동작 원리  클라이언트가 요청 → 서버가 응답 → 클라이언트가 결과를 해석  사용자가 브라우저에서 구글에 접속하려고 '구글 홈페이지.html'파일을 요청→구글 서버는 요청을 처리하고 '구글.html'파일을 클라이언트에게 전달→브라우저가 전달받은 파일을 해석해 사용자에게 웹 페이지를 보여줌  API서버는 데이터를 응답할 때 HTML뿐만 아니라 API를 통해 JSON이나 XML형태..

Django - App

Django App  Django에서 App == 하나의 기능 단위 모듈예 : 게시판 기능, 채팅 기능 등  프로젝트(Project)앱(App)어플리케이션의 집합체(하나의 서비스)각각의 기능 단위 → 공통된 기능을 재사용 가능하게 설계하면 반복 작업을 줄이고 효율성을 높일 수 있음→ 프로젝트 초기부터 기능별로 앱을 구분하여 설계하면 유지보수와 협업 효율성이 높아짐    앱 생성하기python manage.py startapp 앱이름  python manage.py startapp articles=> 프로젝트 내부에 새롭게 앱 디렉토리가 생성 ( articles/) 앱 이름은 복수형으로 짓는 것을 권장   앱 등록하기 프로젝트 폴더 settings.py파일의 INSTALLED_APPS 리스트에 새 앱 이름..

Django

Django Python 기반으로 작성된 웹 프레임워크웹 개발을 위한 모든 필수 도구를 포함한 풀스택 프레임워크웹사이트의 백엔드(서버 측 논리)와 프론트엔드(HTML, CSS, JavaScript 등)을 효율적으로 연결할 수 있도록 돕는 도구이자 환경   Django의 구조 Django가 따르는 MTV 아키텍처  Model • 데이터베이스와 상호작용하는 부분 • 데이터를 저장하거나 가져올 때 사용하는 로직을 포함예: 사용자 정보, 게시글 데이터 등을 정의 Template • HTML, CSS, JavaScript와 같은 프론트엔드 레이아웃을 구성하는 부분 • 데이터를 사용자에게 보여주는 역할 View • 사용자의 요청을 처리하고 Model과 Template 사이를 연결하는 역할 • 비즈니스 로직을 작성하..

Framework

Framework  소프트웨어 개발을 위한 구조적인 틀framework를 통해 개발자는 반복적으로 필요로 하는 기능이나 로직을 효율적으로 처리가능   구조화된 코드의 집합 • 자주 사용되는 도구와 기능 모음 • 특정 작업을 수행하는 데 필요한 기능들이 통합적으로 제공 코드 재사용성 • 이미 검증된 코드로 구성되어 있어, 개발자가 새로 작성할 필요 없이 가져다 쓸 수 있음 대표적인 Python 프레임워크  • Django: 대규모 웹 애플리케이션에 적합 • Flask: 간단하고 가벼운 웹 애플리케이션에 적합 • FastAPI: 최신 기술 기반, 빠르고 비동기 처리에 강점    Framework의 필요성 생산성 향상 • 개발의 부수적인 요소(보안, 데이터베이스 연결 등)를 프레임워크가 처리 • 개발자는 핵심..

∟ Framework 2024.12.30

MVT(Model-View-Template) design pattern에 기반을 둔 Django의 architecture

MVT(Model-View-Template) Django의 핵심 구조Django에서 사용하는 아키텍처 패턴, 웹 애플리케이션의 기본 구조를 정의  *구성 요소 모델(Model)데이터베이스 구조와 데이터 처리 로직을 정의데이터베이스 테이블을 표현, 각 테이블의 컬럼은 모델의 필드를 나타냄 데이터를 저장, 조회, 수정, 삭제하는 작업 수행 Djangosms ORM(Object-Relational Mapping)을 제공, SQL을 직접 작성하지 않고도 Python코드로 데이터베이스 작업을 수행할 수 있게 함 뷰(View)비즈니스 로직과 데이터 처리를 담당사용자 요청에 따라 어떤 데이터를 보여줄지 결정Django의 뷰는 URL과 연결되어 사용자의 요청을 처리, 필요한 데이터를 모델에서 가져와 템플릿에 전달 뷰는..

Python to AI 2024.11.15
728x90