
바이브 코딩 방식을 활용한 뉴스 요약 챗봇 서비스 구축: (1) 챗봇 구현 (2) 뉴스 검색 및 요약 기능

[SSAFY 사전 과제] 생성형 AI를 활용하여 간단한 SW 프로그램 만들어보기
Django Framework와 가상환경

Django 프로젝트와 앱, Design Pattern

Django Template system이란, 파이썬 데이터(context)를 HTML 문서(Template)과 결합하여, 로직과 표현을 분리한 채 동적인 웹페이지를 생성하는 도구입니다.

요청 URL에 따라 실행될 view 함수가 달라집니다.

Model은 데이터베이스와 Python 클래스(객체)로 추상화된 형태로 상호작용합니다. 데이터베이스에 대한 깊은 지식 없이도 쉽게 데이터 관리가 가능합니다.

ORM이란 객체 지향 프로그래밍 언어의 객체(Object)와 데이터베이스의 데이터를 매핑(Mapping)하는 기술입니다.

Form이란 사용자 입력 데이터를 수집하고, 처리 및 유효성 검사를 수행하기 위한 도구입니다. 유효성 검사를 단순화하고 자동화할 수 있는 기능을 제공합니다. 개발자는 이를 통해 빠르고 일관된 입력 검증 기능을 구현할 수 있습니다.

Static files란 서버 측에서 변경되지 않고 고정적으로 제공되는 파일, Media files란 사용자가 웹사이트를 통해 직접 업로드하는 파일입니다.

HTTP는 웹 브라우저와 서버가 서로 대화하기 위해 사용하는 공통 언어 또는 약속입니다. 브라우저가 ‘이 페이지 보여줘’라고 요청(Request)을 보내면, 서버는 그에 맞는 HTML, 이미지 등을 응답(Response)으로 보내주는 방식으로 동작합니다.

AuthenticationForm이란 로그인 인증에 사용할 데이터를 입력 받는 built-in form입니다. UserCreationForm이란 회원 가입시 사용자 입력 데이터를 받는 built-in ModelForm입니다.

회원정보 수정 기능 구현은 수정할 대상 User 객체를 가져오고, 입력받은 새로운 정보로 기존 내용을 갱신합니다. 비밀번호 변경 기능 구현은 기존 비밀번호를 통해 사용자를 인증하고, 새로운 비밀번호를 암호화하여 갱신합니다.

Many to one relationships이란 한 테이블의 0개 이상의 레코드가 다른 테이블의 레코드 한 개와 관련된 관계입니다.

Article&User, Comment&User 관계 구현을 마무리한 후, View decorator와 ERD까지 다룹니다.