১১-৯ঃ Session ফ্রেমওয়ার্ক এর ব্যবহার

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

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

Code:: 11.9.1 first_app/views.py

from django.shortcuts import render
from django.shortcuts import render
from datetime import datetime, timedelta
from django.http import HttpResponse
# cookie ---

...
...
...

def set_session(request):
    # data = {
    #     'name' : 'rahim',
    #     'age' : 23,
    #     'language' : 'Bangla'
    #  }
    # print(request.session.get_session_cookie_age())
    # print(request.session.get_expiry_date())
    # request.session.update(data)
    request.session['name'] = 'Karim'
    return render(request,'set_session.html')

def get_session(request):
    name = request.session.get('name', 'Guest')
    return render(request,'get_session.html' ,{'name' : name})
        
def del_session(request):
    # del request.session['name']
    request.session.flush()
    return render(request,'del_session.html')
  • set_session ফাংশনে 'name' নামে একটি সেশন সেট করা হয়েছে যার ভ্যালু রাখা হয়েছে 'karim'

  • delete ফাংশনে session.flush() ফাংশন ব্যবহার করে session ডেটা ডিলিট করা হয়েছে

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

Code:: 11.9.2 first_app/templates/set_session.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>Session is setting... </h1>
    <h4>{{name}}</h4>
</body>
</html>

Code:: 11.9.3 first_app/templates/get_session.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>Session is getting</h1>
<p>{{name}}</p>

</body>
</html>

Code:: 11.9.4 first_app/templates/del_session.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>Session is deleting... </h1>
</body>
</html>

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

Code:: 11.9.5 first_app/urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('set/',views.set_session),
    path('get/',views.get_session),
    path('del/',views.del_session),
]

এবার, প্রজেক্ট রান করে set_session( ) , get_session( ) ,del_session( ) ফাংশনগুলির কার্যকারিতা যাচাই করি-

Last updated