본문 바로가기

Project/Shall We Django?

(5)
Shall We Django? [4] 1/ Django Template Language 데이터를 저장하는 데 쓰일 model이 일차적으로 준비됐다. 이제 당면한 목표는 두 개다. 하나는 데이터베이스의 내용을 웹페이지에 렌더링하는 것이고, 다른 하나는 웹페이지에서 바로 내용을 입력하는 기능을 넣는 것이다. 이번 포스팅에서는 전자를 다룰 예정이다. 데이터베이스의 내용을 사용자가 접하는 웹페이지란 결국 templates다. 즉 html을 다뤄야 한다. 그러나, 어떻게? 어떻게 해야 데이터베이스의 자료를 html로 끌고 올 수 있을까? a 태그를 써서 하이퍼링크라도 달아야 할까? 우리는 데이터베이스를 Python 객체로써 다루고 있다. 이러한 객체를 조작하기 위해서는 역시 Python 파일이 필요하다. 우리는 templates에 연관된 Python..
Shall We Django? [3] 1/ 모델 지난 시간까지는 URL과 앱 내부의 html을 연결하는 작업을 진행했다. 만들고자 하는 사이트가 위키 형태이므로, 어떠한 텍스트를 입력하고 저장한 뒤 수정도 가능하며 삭제도 할 수 있도록 만들고 싶다. 이러한 기능을 가리켜 CRUD라고 부른다. 한국어 위키피디아에서는 "대부분의 컴퓨터 소프트웨어가 가지는 기본적인 데이터 처리 기능인 Create(생성), Read(읽기), Update(갱신), Delete(삭제)를 묶어서 일컫는 말이다."라고 서술하고 있다. Django에서도 CRUD를 담당하는 부분이 있다. models라고 한다. 여기서 각각의 model은 models.py에서 정의된 각각의 model들을 말하고, 하나의 model은 클래스(객체)다. 또한 하나의 model은 하나의 데이터베이..
Shall We Django? [2] 빼먹고 말을 하지 않았는데, 사용 중인 OS는 Windows 11 Home 22631.3155이며, VSCode로 개발을 진행하고 있다. Django 프로젝트 내에서는 여러 개의 앱이 존재할 수 있다. 앱은 사용자에게서 입력 받은 URL과 연결될 html 파일을 호출하고 렌더링하며 데이터베이스와 연결 짓는 등의 역할을 한다. bash에 django-admin startapp [app name]를 입력하거나, python [dir]/manage.py startapp [app name]을 입력하면 명령을 실행한 디렉토리 내에 앱 구조가 생성된다. manage.py과 같은 위치에 apps라는 이름의 앱을 만들어보겠다. 위와 같은 파일들이 apps 폴더 내에 생성되었다. 지금 와서 Django에 대해 이야기하자..
Shall We Django? [1] 포스팅 내용이 난잡할 예정이다. 하루에 여러 번 업로드될 수 있고, 사진 없이 텍스트로만 이루어지거나, 길이가 짧을지드 모르고, 별다른 내용이 담기지 않았을 수도 있다. 심지어는 잘못된 내용이 기재될 가능성도 있다. 일단은 진행하겠다. 1/ 가상환경 파이썬에서는 가상환경(virtual environment, venv)이라는 것을 제공한다. 자세한 작동 원리는 모르겠다.(1) 현재 이해하기로는 파이썬과 연동되는 패키지들만 따로 떼어 독립시켜 놓은 환경이다. 가상환경이 활성화되면, 파이썬 기본 기능에 대해서는 전역적인 경로를 참조하되, 패키지에 대해서는 전역적 경로가 아닌 가상환경이 설치된 경로의 패키지를 참조하게 된다. 즉, 프로젝트 별로 따로 패키지를 관리할 수 있게 된다. 이러한 가상환경은 패키지의 버..
Shall We Django? [0] - 시작하기에 앞서 알고리즘 문제 해결이 아닌 다른 걸 해봐야겠다고 생각했다. 프로그래밍을 시작한 지 두 달이 조금 넘었다. 그간 대단한 문제들을 풀어온 것은 아니다. 아직 풀어야 할 문제들이 산더미 같다. 그래도, 다른 시도를 해볼 때가 왔다. 문제를 푸는 건 그 자체로 즐겁지만 어떠한 생산성을 담보하지는 않고, 알고리즘 문제 해결만을 위해서 프로그래밍을 공부하는 건 아니니까. 물론 나는 아직 훈련하는 입장이므로 간단한 토이 프로젝트를 해보고 싶었다. 자바로 계산기나 텍스트 RPG로 객체지향 이해하기라거나, 메모장 구현하기라거나. 고민 끝에 최종적으로 선정한 것은 파이썬과 Django를 통한 웹사이트 만들기였다. 요 며칠 자바로 한 문제씩 알고리즘 문제를 풀면서 이런 생각을 많이 했다. '뭐가 이렇게 주렁주렁 달린 거야?..