تنظیم List Display (Set List Display)
لیست نمایش (List Display) ظاهر جدول ادمین است. پیش فرض، هر ردیف فقط نام شیء است. مثل "Member object (1)". اما باید خواناتر باشد. بنابراین دو راه داریم و هر دو ساده هستند.
خواناتر کردن لیست نمایش
راه اول: تابع رشته نمایشی را عوض کن. «تابع __str__ (String Representation)» متن نمایش هر ردیف است. راه دوم: ویژگی «list_display» را تنظیم کن. سپس ستون های دلخواه نمایش داده می شوند.
1) تغییر رشته نمایشی در models.py
با تعریف __str__ نام و نام خانوادگی را برگردان. سپس لیست خوانا می شود. این یعنی هر ردیف مثل کارت دانش آموز نام کامل دارد.
from django.db import models
class Member(models.Model):
firstname = models.CharField(max_length=255)
lastname = models.CharField(max_length=255)
phone = models.IntegerField(null=True)
joined_date = models.DateField(null=True)
def __str__(self):
return f"{self.firstname} {self.lastname}"
2) تنظیم list_display در admin.py
حالا ستون ها را مشخص کن. «ModelAdmin» مدیر نمایش مدل است. با «list_display» ترتیب و فیلدها مشخص می شوند.
from django.contrib import admin
from .models import Member
# Register your models here.
class MemberAdmin(admin.ModelAdmin):
list_display = ("firstname", "lastname", "joined_date",)
admin.site.register(Member, MemberAdmin)
نکته: افزودن MemberAdmin را فراموش نکن. باید به صورت admin.site.register(Member, MemberAdmin) باشد. سپس صفحه /admin/ را تازه سازی کن.
جمع بندی سریع
- دو راه داری: __str__ یا list_display.
- __str__ متن هر ردیف را تعیین می کند.
- list_display ستون های جدول را مشخص می کند.
- MemberAdmin را حتماً ثبت کن.
مرحله قبل: افزودن مدل ها (Include Models). ادامه مسیر: به روزرسانی رکوردها. همچنین: تنظیم List Display.