২১.৫ : কন্টাক্ট আস মডেল তৈরী

আজকে আসো আমরা আমাদের সেকেন্ড ছোটো মডেল লিখে ফেলি সেটা হচ্ছে contact_us মডেল। আমরা নরমাল কোনো একজন ইউজার এর নাম, ফোন নম্বর আর মেসেজ/প্রবলেম এই তিনটা ডাটা নিবো।

মডেল তৈরি করার পর সেটাকে admin.py এ রেজিষ্টার করবো আর migrations কমান্ড দিয়ে দিবো।

class ContactUs(models.Model):
    name = models.CharField(max_length = 30)
    phone = models.CharField(max_length = 12)
    problem = models.TextField()
    
    def __str__(self):
        return self.name

যেহেতু মডেল তৈরি করেছি সো মাইগ্রেশন কমান্ড গুলা অবশ্যই দিতে হবে কিন্তু।

python manage.py makemigrations
python manage.py migrate

এখন আসো একটা মজার জিনিস আমরা দেখে ফেলি সেটা হচ্ছে verbose_name মানে হচ্ছে এডমিন প্যানেল এ যখন আমাদের ContactUs মধ্যে দেখাবে সেখানে সেটা Contact Uss হয়ে যাবে আমরা চাই নাম টা যেনো Contact Us এভাবে থাকুক। সেজন্যে আমরা verbose_name নামে একটা বিল্ট ইন ভ্যারিয়েবল ইউজ করবো নিচের মত করে। যেহেতু ক্লাস এ এক্সট্রা characteristics অ্যাড করতেছি সেজন্যে class Meta দিতেই হবে আমাদেরকে।

class ContactUs(models.Model):
    name = models.CharField(max_length = 30)
    phone = models.CharField(max_length = 12)
    problem = models.TextField()
    
    def __str__(self):
        return self.name
    class Meta:
        verbose_name_plural = "Contact Us"

এখন তুমি যদি চাও যে আরো সুন্দর ভাবে টেবিল ফরম্যাট এ কন্টাক্ট us মডেল এর ডাটা দেখাতে তাইলে তোমাকে মডেল এডমিন ইউজ করতে হবে আর list_display নামে একটা লিস্ট এর মধ্যে বলে দিতে হবে যে কি কি ডাটা তুমি দেখতে চাও

from django.contrib import admin
from .models import ContactUs
# Register your models here.

class ContactModelAdmin(admin.ModelAdmin):
    list_display = ['name', 'phone', 'problem']
admin.site.register(ContactUs, ContactModelAdmin)

Last updated