Django

⌘K
  1. Home
  2. Django
  3. Django তে কিভাবে কাজ করতে...
  4. Form ফর্ম
  5. 05. মডেল ফর্ম customization

05. মডেল ফর্ম customization

মডেল

আমাদের মডেলটি models.py আগেরটি ই রয়েছে সহজ করার জন্য আমি কোন পরিবর্তন করিনি।

from django.db import models

class Student(models.Model):
    first_name = models.CharField(max_length=50)
    last_name = models.CharField(max_length=50)
    email = models.EmailField(max_length=254)
    phone_number = models.CharField(max_length=20)
    registration_number = models.CharField(max_length=20, unique=True)
    department = models.CharField(max_length=50)
    semester = models.CharField(max_length=10)
    section = models.CharField(max_length=10)

    def __str__(self):
        return self.first_name + " " + self.last_name

সকল ফিল্ড দিয়ে ফর্ম বানানো

from django import forms
from .models import Student

class StudentForm(forms.ModelForm):
    class Meta:
        model = Student
        fields = '__all__'

এই কোডটি মডেল এর সকল ফিল্ড ধারণ করে।

নির্দিষ্ট ফিল্ড দিয়ে ফর্ম বানানো

যদি কোন ফিল্ড বাদ দেয়ার দরকার পরে তাহলে exclude নামে আরেকটি অপসন ব্যবহার করবো। আমি চাচ্ছি exclude এ যা ফিল্ড লিখবো তা ফর্ম এ শো করবে না

from django import forms
from .models import Student

class StudentForm(forms.ModelForm):
    class Meta:
        model = Student
        exclude = ['email', 'phone_number', 'registration_number', 'department', 'semester', 'section']

আবার চাইলে নিজের ইচ্ছামত ফিল্ড গুলোকে সিরিয়াল করে লিখতে পারি। শুধু first_name, last_name ফিল্ড শো করবে

from django import forms
from .models import Student

class StudentForm(forms.ModelForm):
    class Meta:
        model = Student
        fields = ['first_name', 'last_name']

এর পরের টিউটোরিয়ালে আমরা ফর্ম কে বিভিন্ন ভাবে কাস্টমাইজ করে ব্যবহার করতে শিখতে পারবো।

How can we help?