코딩공부/Python Django

[django 실습] 게시판 만들기 - 글 삭제 기능 만들기

integerJI 2020. 2. 23. 23:05

[django] python django 게시판 만들기 - 글 삭제 기능 만들기


model, admin 설정 : https://integer-ji.tistory.com/89

views에 데이터 가져오기 : https://integer-ji.tistory.com/90

detail page 만들기 : https://integer-ji.tistory.com/91

setting 설정, 데이터 자르기, 정렬하기 : https://integer-ji.tistory.com/93

getbootstrap으로 홈페이지 꾸미기 : https://integer-ji.tistory.com/94

템플릿 상속, url 관리하기 : https://integer-ji.tistory.com/95

디자인 쪼끔 수정 : https://integer-ji.tistory.com/97

글 쓰기 기능 만들기 : https://integer-ji.tistory.com/99

글 수정 기능 만들기 : https://integer-ji.tistory.com/100


언제나 시작은 가상 환경 실행, 디렉터리 이동

source myvenv/Scripts/activate

cd crudproject/

 

 

새로운 페이지.html 생성하는 방법

html을 만들면 해야할것 3가지


1. templates 폴더 안에 html파일 만들기


2. views.py에 함수 설정하기


3. urls.py url 만들기

 

 

crudapp/templates/detail.html 수정하기

{% extends 'base.html' %}

{% block content %}

    <div class="container"> 
        <div class="card">
          <div class="card-body">
            <h1>{{ blog.title }}</h1>
            <p>{{ blog.pub_date }}</p>
            <p>{{ blog.body }}</p> 
          </div>
        </div>
        </div>
        <br>

        <a href="{% url 'update' blog.id %}">수정하기</a>
        <a href="{% url 'delete' blog.id %}">삭제하기</a>

{% endblock %}

 

delete 링크를 만들어 줍니다.

 

views.py delete 함수 설정

def delete(request, blog_id):
    blog = Blog.objects.get(id=blog_id)
    blog.delete()
    return redirect('/')

 

delete 함수를 만들어 줍니다.

 

해당 blog_id를 가져와 delete 해줍니다.

 

 

crudapp/urls.py url 설정하기

 

from django.urls import path
from . import views

urlpatterns = [
    path('new/', views.new, name='new'),
    path('detail/<int:blog_id>/', views.detail, name='detail'),
    path('create/', views.create, name='create'),
    path('postcreate/', views.postcreate, name='postcreate'),
    path('update/<int:blog_id>/', views.update, name='update'),
    path('delete/<int:blog_id>/', views.delete, name='delete'),
]

 

delete path를 설정

 

 

확인

 

27번째 글을 삭제

 

 

글이 삭제되면 / url로 redirect 됩니다.

 

 

글 삭제 후 새로운 글을 써보면

 

27번을 지나 28번째 글로 생성이 됩니다.

 

 

git push

git init

git add .

git commit -m "코멘트"

 

git push origin master

 

 

 - 끝 -

 

---