از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
چگونه یک سایت مدیریت جنگو را راه اندازی کنیم
سرفصلهای مطلب
سایت مدیریت جنگو روشی ساده و در عین حال موثر را برای مدیریت مدل های خود و ساخت پروژه های پایدار در اختیار توسعه دهندگان قرار می دهد. این به شما امکان می دهد رکوردهایی را از برنامه های خود ایجاد، مشاهده، به روز رسانی و حذف کنید.
در این مقاله روش ثبت نام خود را یاد خواهید گرفت models
با سایت مدیریت خود، حساب کاربری ابرکاربر خود را ایجاد کنید، وارد شوید و از سایت خود استفاده کنید و سایت مدیریت خود را سفارشی کنید.
به عنوان یک توسعه دهنده، اگر به فکر ساختن یک پروژه جنگو هستید یا در آن هستید process در ساخت یک پروژه، ایجاد سایت مدیریت جنگو مرحله بعدی بعد از ایجاد مدل جنگو شما است.
روش ثبت مدل های خود
مدل های خود را در خود ثبت کنید admin.py
فایل. با ثبت نام خود models
شما جنگو را قادر میسازید تا فرمهای مبتنی بر آن را تولید کند روی اطلاعات موجود در مدل همچنین به عنوان شکلی از اسناد پروژه شما عمل می کند و به شما امکان می دهد داده ها را به صورت ایمن مدیریت کنید.
در زیر روش ثبت نام شما آورده شده است models
:
from django.contrib import admin
from .models import Author, Genre, Book, BookInstance, Language
admin.site.register(Book)
admin.site.register(Author)
admin.site.register(Genre)
admin.site.register(BookInstance)
admin.site.register(Language)
واردات خط اول django.contrib.admin
. ادمین جنگو را برای پروژه شما فعال می کند و به شما امکان می دهد از یک URL خاص (/admin/) در مرورگر وب خود به آن دسترسی داشته باشید.
خط دوم کد شما را وارد می کند models
، در حالی که چهار خط آخر کد، تماس بگیرید روی را admin.site.register
برای ثبت هر یک از آنها.
شما models
بسته به این می تواند بیشتر یا کمتر باشد روی پروژه شما چقدر پیچیده است
روش ایجاد سوپرکاربر
یک حساب کاربری superuser به شما امکان می دهد وارد سایت مدیریت شوید، رکورد ایجاد کنید و اشیاء را مدیریت کنید.
دستور زیر یک حساب کاربری superuser با دسترسی کامل به سایت مدیریت و تمام مجوزهای مورد نیاز ایجاد می کند:
# For macOS/Linux
python3 manage.py createsuperuser
# For Windows
py manage.py createsuperuser
یک پیام برای وارد کردن نام کاربری، ایمیل و رمز عبور دریافت خواهید کرد. پس از تکمیل این دستور، شما یک حساب کاربری superuser خواهید داشت و می توانید سرور توسعه خود را مجددا راه اندازی کنید و جزئیات ورود خود را با استفاده از دستور زیر تست کنید:
# For macOS/Linux
python3 manage.py runserver
# For Windows
py manage.py runserver
هنگام اجرای این دستورات، مطمئن شوید که در همان دایرکتوری هستید manage.py
.
روش ورود و استفاده از سایت خود
برای ورود به سایت خود، سایت خود را باز کنید /admin
URL (یا http://127.0.0.1:8000/admin) در مرورگر شما. الف را خواهید دید page که شبیه این است:
مشخصات اکانت سوپرکاربر خود را وارد کنید، روی ورود کلیک کنید و یک صفحه جدید خواهید دید page که شبیه این است:
جدید page در بالا سایت مدیریت جنگو وجود دارد که تمام مدل های ثبت شده را نمایش می دهد.
برای شروع ایجاد رکوردهای خود، روی پیوند افزودن در کنار هر مدل کلیک کنید.
پس از افزودن رکورد به مدل، کلیک کنید روی SAVE
، Save and add another
، یا Save and continue editing
برای ذخیره رکورد شما صفحه نمایش شما باید مانند تصویر زیر باشد:
اسکرین شات های بالا فقط نمونه هایی از ظاهر سایت مدیریت جنگو را نشان می دهند. با توجه به نیاز پروژه شما، مدل ها و زمینه های شما ممکن است متفاوت از نمونه های این مقاله به نظر برسند.
چگونه سایت مدیریت خود را سفارشی کنیم
جنگو با اطلاعات مدل هایی که ثبت نام کرده اید، سایت مدیریت شما را ایجاد می کند. همچنین به شما این امکان را می دهد که رابط مدیریت خود را مطابق با نیازهای پروژه خود سفارشی کنید.
بخش های زیر به شما نشان می دهد که چگونه این سفارشی سازی ها را انجام دهید.
روش ثبت نام a ModelAdmin
کلاس
آ ModelAdmin
class نشان دهنده یک مدل در رابط مدیریت شما است. با ثبت این کلاس، می توانید رفتار یک مدل خاص را در رابط مدیریت خود سفارشی کنید. همچنین پایگاه کد شما را مرتب نگه می دارد و نگهداری آن را آسان تر می کند:
# Comment out your original registeration
# admin.site.register(Author)
# Define the admin class
class AuthorAdmin(admin.ModelAdmin):
pass
# Register the admin class with the model it represents
admin.site.register(Author, AuthorAdmin)
قطعه کد بالا یک کلاس ادمین خالی را برای مدل Author تعریف و ثبت می کند.
همیشه قبل از ثبت نام اصلی خود را نظر دهید ModelAdmin
کلاس
چگونه نمای لیست خود را سفارشی کنیم
با توجه به مدل بالا، اگر چندین نویسنده دارید یا نیاز به نمایش اطلاعات اضافی درباره نویسندگان خود دارید، list_display
روش به شما امکان می دهد نمای لیست خود را سفارشی کنید.
در زیر مثالی از روش سفارشی کردن رابط کاربری خود با استفاده از list_display
روش:
class AuthorAdmin(admin.ModelAdmin):
list_display = ('last_name', 'first_name', 'date_of_birth', 'date_of_death',)
قطعه کد بالا نشان می دهد AuthorAdmin
کلاس و چند تا از نام فیلدهایی که می خواهید در لیست نمایش داده شوند، به ترتیبی که نیاز دارید.
شما همیشه باید این فیلدها را در مدل جنگو خود مشخص کنید (models.py
فایل). در غیر این صورت نمایش داده نمی شوند.
نتیجه باید یک رابط مانند شکل زیر باشد:
با استفاده از این روش، می توانید نمای لیست هر مدلی را مطابق با نیازهای پروژه خود سفارشی کنید.
روش سفارشی کردن نمای جزئیات
جنگو نماهای جزئیات را به طور پیش فرض به ترتیبی که در مدل تعریف شده اند به صورت عمودی قرار می دهد. اما شما می توانید این مورد را متناسب با نیاز خود تغییر دهید و تصمیم بگیرید که کدام فیلدها نمایش داده شوند یا حذف شوند.
شما می توانید این کار را با اضافه کردن field
به کلاس مدیریت خود نسبت دهید. مثلا:
class AuthorAdmin(admin.ModelAdmin):
list_display = ('last_name', 'first_name', 'date_of_birth', 'date_of_death')
fields = ['first_name', 'last_name', ('date_of_birth', 'date_of_death')]
ویژگی فیلد در قطعه کد بالا ترتیب فیلدهای شما را تغییر می دهد. first_name
اکنون می آید قبل از last_name
. فیلدها به صورت پیشفرض به صورت عمودی نمایش داده میشوند، اما با گروهبندی آنها در یک تاپیک (در قسمت تاریخ) اکنون به صورت افقی نمایش داده میشوند.
نمای جزئیات نویسنده اکنون باید به شکل زیر ظاهر شود:
همچنین، می توانید از exclude
ویژگی برای حذف/حذف فیلدها از فرم.
نتیجه
راه اندازی سایت مدیریت جنگو برای مدیریت موثر مدل های خود در پروژه جنگو مهم است. دانستن روش استفاده و سفارشی کردن رابط جنگو، کیفیت و قابلیت نگهداری پروژه شما را بهبود می بخشد.
این مقاله روش راه اندازی سایت مدیریت خود و روش سفارشی سازی آن را برای مطابقت با نیازهای پروژه شرح می دهد. کد نویسی مبارک!
منتشر شده در 1403-03-04 19:29:08