কম্পিউটার

জ্যাঙ্গোতে কীভাবে একটি আপডেটভিউ যুক্ত করবেন?


UpdateView হল জ্যাঙ্গোর একটি ভিউ যা ফ্রন্টএন্ড থেকে যেকোনো মডেলের ডেটা আপডেট করতে ব্যবহৃত হয়। এটি একটি অন্তর্নির্মিত দৃশ্য যা সহজেই প্রয়োগ করা যেতে পারে। ভিউ আপডেট করার ক্ষেত্রে এটি অ্যাডমিন পেজের মতো কাজ করে। এই নিবন্ধে, আমরা একটি উদাহরণ নেব এবং প্রদর্শন করব কীভাবে Django-এ UpdateView ব্যবহার করতে হয়।

প্রথমত, একটি জ্যাঙ্গো প্রকল্প এবং একটি অ্যাপ তৈরি করুন। আমি "টিউটোরিয়াল11" নামে প্রকল্পটি তৈরি করেছি এবং "modelFormsDemo" নামের অ্যাপ .

এখন, কিছু মৌলিক জিনিস করা যাক।

settings.py-এ অ্যাপ যোগ করুন −

INSTALLED_APPS+ = ['modelFormsDemo']

প্রকল্পের urls.py-এ , অ্যাপের ইউআরএল অন্তর্ভুক্ত করুন।

from django.contrib import admin
from django.urls import path,include

urlpatterns = [
   path('admin/', admin.site.urls),
   path('', include('modelFormsDemo.urls'))
]

অ্যাপের urls.py,-এ নিম্নলিখিত যোগ করুন -

from django.urls import path,include
from . import views

urlpatterns = [
   path('', views.home,name="home"),
   path('student/edit//', views.StudentUpdateView.as_view(), name="update"),
   path('success/', views.success, name='success')
]

এখানে আমরা তিনটি ইউআরএল তৈরি করেছি; একটি ফ্রন্টএন্ড রেন্ডার করার জন্য, একটি আপডেট করার জন্য UpdateView এর জন্য, এবং আপডেট করার পরে পুনঃনির্দেশ করার জন্য সাফল্য৷

উদাহরণ

models.py-এ , এটি যোগ করুন -

from django.db import models

# Create your models here
class Student(models.Model):
   name=models.CharField(max_length=100)
   standard=models.CharField(max_length=100)
   section=models.CharField(max_length=100)

এখানে আমরা একটি সাধারণ মডেল তৈরি করেছি। এটি একটি খুব মৌলিক মডেল৷

views.py-এ , নিম্নলিখিত যোগ করুন −

from django.shortcuts import render
from .forms import StudentForm
from django.views.generic.edit import UpdateView
from .models import Student
from django.urls import reverse_lazy

# Create your views here.
def home(request):
   if request.method=='POST':
      form=StudentForm(request.POST)
      if form.is_valid():
         form.save()
   stuForm=StudentForm()
   return render(request,'home.html', {"stu_form":stuForm})
class StudentUpdateView(UpdateView):
   model=Student
   fields="__all__"
   template_name='update_view.html'
   success_url='/success/'
def success(request):
   return render(request,'success.html')

এখানে আমরা জটিল কিছু করিনি; আমরা শুধু মডেল, ক্ষেত্র এবং টেমপ্লেটের একটি নাম দিয়েছি যা আমরা রেন্ডার করতে যাচ্ছি। এছাড়াও, আমরা একটি ফাংশন সংজ্ঞায়িত করেছি যা আপডেট করার পরে কী করতে হবে তা বলে দেবে৷

forms.py তৈরি করুন অ্যাপ ডিরেক্টরিতে এবং নিম্নলিখিত লাইনগুলি যোগ করুন -

from django import forms
from .models import Student

class StudentForm(forms.ModelForm):
   class Meta:
      model=Student
      fields=['name','standard','section']

এখানে আমরা সহজভাবে একটি ফর্ম তৈরি করেছি যা আমরা রেন্ডার করব।

এখন একটি টেমপ্লেট তৈরি করুন ফোল্ডার এবং এর ভিতরে তিনটি ফাইল যোগ করুন; home.html, update_view.html , এবং success.html।

home.html-এ এবং update_view.html

<!DOCTYPE html>
<html>
   <head>
      <title>TUT</title>
   </head>
   <body>
      {% for fm in stu_form %}
      <form method="post">
            {%csrf_token%}
            {{fm.errors}}<br>
            {{fm.label}}:{{fm}}<br>
         {%endfor%}
         <button type="submit">Submit</button>
      </form>
   </body>
</html>

success.html-এ , নিম্নলিখিত লাইন যোগ করুন −

<!DOCTYPE html>
<html>
   <head>
      <title>TUT</title>
   </head>
   <body>
      <h2>Success</h2>
   </body>
</html>

যে সঙ্গে, সবকিছু সেট করা হয়. এখন আপনি আউটপুট চেক করতে এগিয়ে যেতে পারেন।

আউটপুট

Home.html

জ্যাঙ্গোতে কীভাবে একটি আপডেটভিউ যুক্ত করবেন?

এখন আপনি যদি https://127.0.0.1:8000/student/edit/(student object id)/ এ যান তাহলে আপনি আমাদের update_view.html দেখতে পাবেন।

Update_view.html

জ্যাঙ্গোতে কীভাবে একটি আপডেটভিউ যুক্ত করবেন?


  1. জ্যাঙ্গোতে একটি পাঠ্য সম্পাদক ক্ষেত্র কীভাবে যুক্ত করবেন?

  2. কিভাবে একটি জ্যাঙ্গো ওয়েবসাইটে একটি ক্যাপচা যোগ করবেন?

  3. জ্যাঙ্গোতে কীভাবে একটি অর্থ ক্ষেত্র যুক্ত করবেন?

  4. কীভাবে আপনার প্রকল্পে জ্যাঙ্গো ডিবাগ টুলবার যুক্ত করবেন?