[python] Django로 블로그 애플리케이션 개발하기
Django는 Python으로 작성된 오픈 소스 웹 애플리케이션 프레임워크로, 빠르고 효율적으로 웹 애플리케이션을 개발할 수 있도록 해줍니다.
이 튜토리얼에서는 Django를 사용하여 기본적인 블로그 애플리케이션을 어떻게 만들 수 있는지 알아보겠습니다. 블로그 애플리케이션은 게시물을 작성하고 편집하며, 이를 웹페이지에서 보여주는 기능을 포함합니다.
목차
프로젝트 설정
먼저, Django 프로젝트를 생성하고 기본적인 설정을 합니다.
django-admin startproject blog_project
cd blog_project
python manage.py startapp blog
모델 정의
다음으로, 블로그 글에 대한 모델을 정의합니다. models.py
파일에 아래의 코드를 추가합니다.
from django.db import models
from django.urls import reverse
class Post(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse('post_detail', args=[str(self.id)])
URL 및 View 설정
이제 URL과 View를 설정하여 블로그 글을 보여줄 수 있도록 합니다.
# urls.py
from django.urls import path
from .views import PostDetailView
urlpatterns = [
path('<int:pk>/', PostDetailView.as_view(), name='post_detail'),
]
# views.py
from django.views.generic import DetailView
from .models import Post
class PostDetailView(DetailView):
model = Post
template_name = 'blog/post_detail.html'
템플릿 작성
이어서, 블로그 글을 보여줄 템플릿을 작성합니다.
<!-- post_detail.html -->
<h1>{{ post.title }}</h1>
<p>{{ post.content }}</p>
<p>작성일: {{ post.created_at }}</p>
<p>수정일: {{ post.updated_at }}</p>
관리자 페이지 설정
마지막으로, Django의 내장된 관리자 페이지를 통해 블로그 글을 추가하고 수정할 수 있도록 설정합니다.
# admin.py
from django.contrib import admin
from .models import Post
admin.site.register(Post)
이제 python manage.py runserver
명령어로 서버를 실행하고, 브라우저에서 http://127.0.0.1:8000/admin
에 접속하여 관리자 페이지에서 블로그 글을 추가하고 관리할 수 있습니다.
이제 Django를 사용하여 기본적인 블로그 애플리케이션을 만드는 방법에 대해 알아보았습니다. Django의 강력한 기능을 활용하여 더욱 다양하고 확장성 있는 블로그를 개발할 수 있습니다.
참고문헌:
- https://www.djangoproject.com/
- https://docs.djangoproject.com/en/3.2/