일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 에어플로우 기초강의
- 웹개발
- docker
- 장고
- 플라스크
- 도커
- cpp
- 예제프로젝트
- 개발자
- 프로그래밍
- 장고 기초 강의
- C언어
- 파이썬 장고
- 파이썬
- 도커 컴포즈
- 쇼핑몰예제
- airflow
- 개발자취업
- Python
- 개발언어
- flask
- ADP
- 기초강의
- mlops
- 파이썬강의
- 인공지능
- c
- 장고 튜토리얼
- c++
- Django
- Today
- Total
TITEDIOS 편한 코딩
[Django] Extra Study - To-Do 리스트 웹 앱 만들기 본문
목차
- 우리가 만들 To-Do 리스트 웹 앱
- 프로젝트 초기화
- 모델 설계
- 관리자 인터페이스 구성
- URL 구성
- 결론
Django로 To-Do 리스트 웹 앱을 만드는 과정을 단계별로 정리해 보았습니다. 이를 따라 하면 Django의 주요 기능을 익히면서 프로젝트를 완성할 수 있습니다.
1. 우리가 만들 To-Do 리스트 웹 앱
그동안에 실습했던 것들을 바탕으로 비슷하지만 좀 다른 기능을 하는 To-Do 리스트 웹 앱을 만들어 보겠습니다. 전체 과정을 이해하도록 노력해 보세요
- 설명: 사용자가 할 일을 추가, 수정, 삭제하고 완료 상태를 표시할 수 있는 앱.
- 핵심 기능:
- 할 일 추가/수정/삭제/완료 표시
- 완료된 항목과 미완료 항목 구분
- 마감 기한 설정 및 정렬
- 학습 포인트:
- 기본적인 CRUD 작업
- 간단한 UI 구성
- Django ORM 연습
2. 프로젝트 초기화
우선 프로젝트를 초기화해야 합니다. 그동안 실습을 진행했던 djangotutorial 디렉토리에서 새로운 App을 추가하는 방식으로 진행합니다. 그렇지 않고 새로 만들고 싶으시면 아래 명령을 먼저 실행해 주세요.
django-admin startproject todo_project
cd todo_project
이후에 아래 명령을 통해 App을 만들어 주시면 됩니다.
python manage.py startapp todo
아래와 같이 파일들이 주르륵 생성될 것입니다.
App을 만들고 우리의 App을 settings.py
에 등록해 주시면 됩니다.
INSTALLED_APPS = [
# other apps...
"todo.apps.TodoConfig",
]
3. 모델 설계
모델을 설계할 차례입니다. todo/models.py
에 아래의 모델을 추가해 주세요.
from django.db import models
class Task(models.Model):
title = models.CharField(max_length=200)
description = models.TextField(blank=True)
completed = models.BooleanField(default=False)
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.title
모델에 대한 설명입니다.
- title: 할 일의 제목
- description: 할 일의 세부 설명
- completed: 완료 여부
- created_at: 생성 시간 (자동 추가)
이제 모델을 적용시켜 봅시다. 아래의 명령으로 모델을 적용합니다.
python manage.py makemigrations
python manage.py migrate
4. 관리자 인터페이스 구성
모델은 Admin 페이지, 즉 관리자에 의해 확인 및 생성, 삭제가 가능했던 것 기억하시죠? 이제 관리자 페이지를 통해 모델을 관리할 수 있도록 인터페이스를 구성해 보겠습니다.
todo/admin.py
의 코드를 아래와 같이 수정하겠습니다.
from django.contrib import admin
from .models import Task
@admin.register(Task)
class TaskAdmin(admin.ModelAdmin):
list_display = ('title', 'completed', 'created_at')
Admin 페이지에 접속하기 위해서는 관리자 계정이 필요합니다. 기존 프로젝트에 APP을 추가하셨다면 관리자 계정이 이미 있을 것입니다만, 아니라면 아래 명령어를 통해 관리자 계정을 생성해 줍니다. (저는 편한 실습을 위해 ID: admin / PW: admin 계정을 사용합니다 ㅎㅎ)
python manage.py createsuperuser
5. URL 구성
이제 URL을 통해 접근이 가능하도록 URL을 설정해 보겠습니다.
5.1 기본 URL 설정
가장 먼저 기본 URL을 설정해야 합니다. mysite/urls.py
또는 todo_project/urls.py
파일을 열어 todo에 관한 URL을 생성해 줍니다.
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('todo/', include('todo.urls')), # todo 앱의 URL 연결
]
5.2 todo URL 설정
todo/urls.py
파일을 수정하여 todo/ 하위의 세부적인 URL을 설정해요 줍니다.
from django.urls import path
from . import views
urlpatterns = [
path('', views.todo_list, name='todo_list'), # 할 일 목록
path('add/', views.todo_add, name='todo_add'), # 할 일 추가
path('edit/<int:task_id>/', views.todo_edit, name='todo_edit'), # 할 일 수정
path('delete/<int:task_id>/', views.todo_delete, name='todo_delete'), # 할 일 삭제
]
결론
이번 포스팅에서는 Django를 활용해할 일을 관리하는 To-Do 리스트 웹 애플리케이션을 만드는 과정을 다뤘습니다. 프로젝트 초기화부터 모델 설계, 관리자 인터페이스 구성, URL 설정까지 전반적인 단계를 자세히 설명하며, Django의 기본적인 CRUD 작업과 ORM 사용법을 익힐 수 있도록 구성했습니다. 이 과정을 통해 Django의 핵심 기능을 학습하며, 간단한 웹 앱 개발을 실습해 볼 수 있습니다. 이전에 실습했던 것과 유사한 방식으로 진행하기 때문에 어려움은 없을 것이라고 생각해 봅니다.
궁금한 점이나 추가로 알고 싶은 내용이 있다면 댓글로 알려주세요!
도움이 되셨다면 공감 부탁드리겠습니다. 여러분의 공감이 정말 큰 힘이 됩니다.
감사합니다!
'Django' 카테고리의 다른 글
[Django] Extra Study #2 - To-Do 리스트 웹 앱 만들기 (0) | 2024.12.06 |
---|---|
[Django] Admin 커스터마이징 - 투표 앱 만들기(Django tutorial) (1) | 2024.11.29 |
[Django] 예쁜 뷰(View) 만들어보기 - 투표 앱 만들기(Django tutorial) (0) | 2024.11.26 |
[Django] 뷰(view) 테스트 자동화하기 - 투표 앱 만들기(Django tutorial) (0) | 2024.11.22 |
[Django] 테스트 자동화하기 - 투표 앱 만들기(Django tutorial) (2) | 2024.11.19 |