মডিউল ৭-১০ঃ পোস্ট ডিলিট করা

এই মডিউলে আমাদের কাজ হবে ফ্রন্ট-এন্ড থেকে পোষ্ট ডিলিট করার ব্যবস্থা করা।

পোস্ট এডিট করার জন্য নতুন একটি URL-প্যাটার্ন এ্যাড করি

Code:: 7.10.1 posts/urls.py

from django.contrib import admin
from django.urls import path, include
from . import views
urlpatterns = [
    path('add/', views.add_post, name='add_post'),
    path('edit/<int:id>', views.edit_post, name='edit_post'),
    path('delete/<int:id>', views.delete_post, name='delete_post'),
]

৮ নং লাইনে এ্যাড করা URL-প্যাটার্নের মাধ্যমে delete_post( ) ফাংশনে একটি int প্যারামিটার পাঠানো হয়েছে। delete_post( ) ফাংশন লিখে ফেলি-

Code:: 7.9.2 posts/views.py

from django.shortcuts import render, redirect
from . import forms
from . import models
# Create your views here.

...
...
...

def delete_post(request, id):
    post = models.Post.objects.get(pk=id) 
    post.delete()
    return redirect('homepage')
  • post.delete() মেথড কল করে নির্দিষ্ট পোস্টের ডাটা ডেটাবেজ থেকে ডিলিট করা হয়েছে

templates/home.html ফাইলে প্রতিটি পোস্টের জন্য একটি <a> ট্যাগ এ্যাড করি -

Code:: 7.9.3 templates\home.html

১৭ নং লাইনে 'delete_post' URL-প্যাটার্নটিতে int প্যারামিটার হিসেবে post.id কে পাঠানো হয়েছে।

এখন প্রজেক্ট রান করলে প্রতিটি পোস্টের জন্য একটি এডিট বাটন দেখতে পাবো যেখানো ক্লিক করে নির্দিষ্ট পোস্টটি ডিলিট হয়ে যাবে।

Last updated