১১-৮ঃ জ্যাংগোতে Cookie এর ব্যবহার

এই মডিউলে দেখব কিভাবে ব্রাউজারের কুকি তে ডেটা সেট করা, ভিউ করা ও ডিলিট করা যায়।

এর জন্য Ninth_Project নামে নতুন একটি প্রজেক্ট ,এর মধ্যে first_app নামে এ্যাপ তৈরি করে প্রজেক্টের ব্যাসিক কনফিগারেশন সমুহ সম্পন্ন করে ফেলি।

ব্রাউজারের কুকি সেট করা, ভিউ করা ও ডিলিট করার জন্য যথাক্রমে set_cookie( ) , get_cookie( ) ,del_cookie( ) ফাংশনগুলি লিখে ফেলি-

Code:: 11.8.1 first_app/views.py

from django.shortcuts import render

# Create your views here.
from django.shortcuts import render
from datetime import datetime, timedelta
from django.http import HttpResponse
# cookie ---
def set_cookie(request):
    response = render(request, 'set_cookie.html')
    response.set_cookie('name', 'rahim')
    response.set_cookie('name', 'karim', expires=datetime.utcnow()+timedelta(days=7))
    return response
def get_cookie(request):
    name = request.COOKIES.get('name')
    print(request.COOKIES)
    return render(request, 'get_cookie.html', {'name':name})

def del_cookie(request):
    response = render(request, 'del_cookie.html')
    response.delete_cookie('name')
    return response
  • ১০ নং লাইনে set_cookie( ) ফাংশন ব্যবহার করে 'name' নামে একটি কুকি সেট করা হয়েছে যার ভ্যালু রাখা হয়েছে 'rahim'

  • ১৫ নং লাইনে COOKIES.get( ) ফাংশন ব্যবহার করে 'name' নামের কুকি name ভ্যারিয়েবলে রাখা হয়েছে

  • ২০ নং লাইনে delete_cookie( ) ফাংশন ব্যবহার করে 'name' নামের কুকি ডিলিট করা হয়েছে

যে ফাইলগুলো রেন্ডার করে cookie সেট করা, ভিউ করা ও ডিলিট করা হবে সে ফাইলগুলো লিখে ফেলি-

Code:: 11.8.2 first_app/templates/set_cookie.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>This is home page</h1>
    <h1>Cookie is setting... </h1>
    <h4>{{name}}</h4>
</body>
</html>

Code:: 11.8.3 first_app/templates/get_cookie.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>This is get cookie page</h1>
    <h1>Cookie is getting... </h1>
    <h4>{{name}}</h4>
</body>
</html>

Code:: 11.8.4 first_app/templates/del_cookie.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>Cookie is deleting... </h1>
</body>
</html>

first_app এর URL-প্যাটার্ন নিচের মত করে লিখে ফেলি-

Code:: 11.8.5 first_app/urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('set/',views.set_cookie),
    path('get/',views.get_cookie),
    path('del/',views.del_cookie),
]

এবার, প্রজেক্ট রান করে http://127.0.0.1:8000/set/ URL-এ গিয়ে Right Click:- Inspect >> Application >> Cookies >> http://127.0.0.1:8000 -এ গেলে দেখা যাবে name নামের কুকি টি সেট হয়েছে ।

http://127.0.0.1:8000/get/ URL-এ গেলে দেখতে পাব কুকি ডেটা ফ্রন্ট-এন্ডে ভিউ করা যাচ্ছে

http://127.0.0.1:8000/del/ URL-এ গেলে দেখতে পাব কুকিটি ডিলিট হয়ে গেছে-

Last updated