فعال سازي و اتصال رابط كاربري Django
اگر مجموعه هاي توسعه Django را دنبال كرده باشيد ، يك برنامه Django را راه اندازي كرده ، برنامه خود را به MySQL وصل كرده و مدل هاي ديتابيس را براي داده هاي Posts و Comments در برنامه وب وبلاگ خود ايجاد كرده ايد.
در اين آموزش ، ما به سايت ادمين Django وصل شده و آن را فعال مي كنيم تا بتوانيد وبلاگ خود را مديريت كنيد. سايت مدير Django با يك رابط كاربري ساخته شده است كه به گونه اي طراحي شده كه به شما و ساير افراد قابل اعتماد امكان مديريت محتواي وب سايت را مي دهد.
شايان ذكر است كه مطالب رسمي Django اشاره مي كند كه اگرچه اين براي استفاده داخلي يك سازمان ايده آل است ، اما ساخت يك برنامه وب حول يك رابط كاربري ادمين Django با توليد خودكار توصيه نمي شود. اگر ديديد كه رابط كاربري شما لازم است پردازش محورتر باشد يا ثابت شد كه جزئيات اجراي جداول و فيلدهاي بانك اطلاعاتي را ابستركت مي كند ، بهتر است نظرات خود را براي سمت ادمين بنويسيد.
پيش نيازها
اين آموزش بخشي از مجموعه هاي توسعه Django است و ادامه آن مجموعه ها به حساب مي آيد.
اگر اين مجموعه ها را دنبال نكرده ايد ، فرضيات زير مطرح مي شود:
• شما نسخه 3 يا بالاتر Django را نصب كرده ايد.
• برنامه Django خود را به يك پايگاه داده وصل كرده ايد. ما از MySQL استفاده مي كنيم ، و مي توانيد با دنبال كردن قسمت دوم مجموعه Django ، “چگونگي ايجاد يك برنامه Django و اتصال آن به يك بانك اطلاعاتي” ، اين كار را انجام دهيد.
• شما با يك سيستم عامل مستقر در يونيكس كار مي كنيد ، ترجيحاً با سرور مجازي ابري اوبونتو 20.04 زيرا اين سيستمي است كه ما روي آن آزمايش كرده ايم. اگر مي خواهيد Django را در محيطي مشابه تنظيم كنيد ، لطفاً به آموزش ما ، “نحوه نصب Django و ايجاد يك محيط توسعه در اوبونتو 20.04” مراجعه كنيد.
از آنجا كه اين آموزش تا حد زيادي با رابط كاربري ادمين Django سروكار دارد ، حتي در صورت وجود ستاپ كمي متفاوت ، احتمالا ميتوانيد آن را دنبال كنيد.
مرحله 1 – ادمين را فعال كنيد
هر وقت كار را در Python و Django شروع كرديم ، بايد محيط مجازي Python خود را فعال كرده و به ديركتوري اصلي برنامه خود برويم. اگر مجموعه ها را دنبال كرده باشيد ، مي توانيد با تايپ كردن دستور زير به اين هدف برسيد.
⦁ $ cd ~/my_blog_app
⦁
⦁ $ . env/bin/activate
براي فعال كردن مدير Django ، بايد اطمينان حاصل كنيم كه برنامه ما بخشي از ليست INSTALLED_APPS در فايل settings.py است.
به ديركتوري فايل تنظيمات برويد:
⦁ (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog/blog/
⦁
از اينجا ، فايل settings.py را باز كنيد. اگر در حال حاضر وجود نداشته باشد ، django.contrib.admin را با استفاده از ويرايشگر متني مانند nano به ليست INSTALLED_APPS اضافه كنيد.
⦁ (env) Sammy@ubuntu:$ nano settings.py
⦁
بخش INSTALLED_APPS فايل بايد مشابه فايل زير باشد. برنامه ما در ليست يكي از برنامه هاي موجود در بالا ، blogsite است ، اما اگر برنامه اي با نام ديگري ايجاد كرده ايد ، اطمينان حاصل كنيد كه آن برنامه همانطور كه نشان داده شده است در اين فايل ليست شده است.
settings.py
…
# Application definition
INSTALLED_APPS = [
‘blogsite’,
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.mesغير مجاز مي باشدes’,
‘django.contrib.staticfiles’,
]
…
در صورت ايجاد تغيير ، حتما فايل را ذخيره كنيد و ببنديد. در nano مي توانيد اين كار را با تايپ كردن CTRL و X سپس Y و ENTER انجام دهيد.
اكنون مي توانيم فايل urls.py را دوباره با nano يا ويرايشگر متن ديگر باز كنيم.
⦁ (env) Sammy@ubuntu:$ nano urls.py
⦁
در زير كامنت بالا ، فايل بايد به صورت زير باشد.
urls.py
…
“””
from django.contrib import admin
from django.urls import path
urlpatterns = [
path(‘admin/’, admin.site.urls),
]
اگر فايل با آنچه در بالا آمده است متفاوت است ، خطوط بالا را در فايل urls.py خود كپي و پيست كنيد.
اكنون كه اطمينان حاصل كرديم كه پروژه وب Django ما داراي كد مناسب در فايل هاي settings.py و urls.py است ، مي دانيم كه برنامه ما به مدل هاي ادمين و رابط كاربري ادمين دسترسي خواهد داشت.
مرحله 2 – تأييد كنيد كه Admin يك برنامه نصب شده است
بايد مدلهاي بعدي را به پايگاه داده انتقال دهيم تا مدلهاي Admin را كه به تازگي اضافه شده است انتخاب كند.
به دايركتوري كه فايل management.py در آن قرار دارد برويد.
⦁ (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog
⦁
به ياد داشته باشيد هر زمان كه تغيير در مدل ها انجام مي دهيد فرمان migrate را اجرا كنيد، مانند اين:
⦁ (env) Sammy@ubuntu:$ python manage.py migrate
⦁
اگر در فايل هاي فوق هيچ تغييري ايجاد نمي كرديم ، هنگام اجراي دستور migrate بايد خروجي مشابه زير را دريافت ميكرديم.
Output
Operations to perform:
Apply all migrations: admin, auth, blogsite, contenttypes, sessions
Running migrations:
No migrations to apply.
در غير اين صورت ، خروجي بايد نشان دهد كه Django جابه جايي هاي لازم براي پشتيباني از برنامه ما را انجام داده است.
اكنون مي توانيم سرور مجازي را با اجراي دستور زير شروع كنيم. مي توانيد 0.0.0.0 را با آدرس IP خود جايگزين كنيد.
⦁ (env) Sammy@ubuntu:$ python manage.py runserver 0.0.0.0:8000
⦁
سپس در يك مرورگر مورد نظر خود به URL پنل ادمين برويد. حتماً آدرس IP سرور مجازي خود را وارد كنيد.
http://your-server-ip:8000/admin/
يك صفحه ورود به سيستم شبيه به اين دريافت خواهيد كرد.
مشاهده اين صفحه به ما اطلاع مي دهد كه برنامه مديريت را با موفقيت فعال كرده ايم.
اگرچه اين برنامه را فعال كرده ايم ، ممكن است هنوز حساب مديريت Django را تنظيم نكرده باشيم. مي توانيم براي ورود به مرحله بعد ، حساب ادمين ايجاد كنيم.
مرحله 3 – ايجاد حساب فوق كاربري Admin
اگر قبلاً يك حساب ادمين تنظيم كرده ايد و مي توانيد وارد صفحه ادمين خود شويد ، مي توانيد از اين مرحله عبور كنيد.
يك ترمينال جديد را براي اتصال به سرور مجازي باز كنيد ، يا برنامه Django را با فشار دادن CTRL و C غيرفعال كنيد تا بتوانيم در محيط برنامه نويسي ترمينال سرور مجازي خود كار كنيم.
Django به شما امكان مي دهد تا يك حساب فوق كاربري توليد كنيد ، كه مي توانيم با اجراي فايل manage.py فرآيند ايجاد ابركاربر را شروع كنيم.
⦁ (env) Sammy@ubuntu:$ python manage.py createsuperuser
⦁
پس از انجام اين كار ، از شما خواسته مي شود تا جزئيات نام كاربري ، ايميل و رمز عبور خود را وارد كنيم. در اين آموزش ، ما با نام كاربري admin_user ، و ايميل sammy@example.com و پسوردadmin123 يك حساب ادمين ايجاد خواهيم كرد. شما بايد اين اطلاعات را با تنظيمات برگزيده خودتان پر كنيد و حتماً از يك رمز عبور ايمن استفاده كنيد كه آن را به خاطر ميسپاريد.
Output
Username (leave blank to use ‘root’): admin_user
Email address: sammy@example.com
سپس هنگامي كه اعلان گذرواژه را مي بينيد ، رمز عبور خود را دو بار وارد كنيد. هنگام وارد كردن آن ، و با زدن كليدهاي رمز عبور خروجي دريافت نخواهيد كرد. براي تأييد گذرواژه ، Enter را فشار دهيد.
Output
Password:
Password (again):
در اين مرحله ، اكنون يك حساب كاربري ادمين با نام كاربري admin_user و رمز عبور admin123 داريم.
بياييد وارد آن شده و بررسي كنيم كه چه چيزي در صفحه ادمين ما وجود دارد.
در صورت لزوم ، مجدداً برنامه Django را با Python manage.py runserver 0.0.0.0:8000 اجرا كنيد و سپس براي مشاهده صفحه ورود به سيستم يك بار ديگر به آدرس http://your-server-ip:8000/admin/ برويد. سپس با نام كاربري و رمز عبور و پسوردي كه تازه ايجاد كرده ايد وارد شويد.
پس از ورود موفق به سيستم ، صفحه زير را دريافت خواهيد كرد.
در مرحله بعد ، بايد روي اتصال برنامه وبلاگ خود به پنل ادمين كار كنيم.
مرحله 4 – ايجاد الگوهاي URL براي پست و كامنت
در مرحله قبل ، با موفقيت وارد رابط كاربري شديم ، اما شايد متوجه شده باشيد كه برنامه وبلاگ ما هنوز در دسترس نيست. براي ايجاد رابط ادمين با برنامه وبلاگ ، بايد آن را با مدل هاي مرتبط پست و كامنت اضافه و ثبت كنيم.
براي اين كار ، يك فايل خالي به نام urls.py ، در ديركتوري وبلاگ ها ايجاد مي كنيم ، مانند اين:
⦁ (env) Sammy@ubuntu:$ touch ~/my_blog_app/blog/blogsite/urls.py
⦁
در اين فايل الگوي URL را براي برنامه وبلاگ خود اضافه خواهيم كرد تا بتوانيم از طريق رابط ادمين به آن دسترسي پيدا كنيم.
به مكان آن فايل urls.py كه به تازگي ايجاد كرديم برويد.
⦁ (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog/blogsite/
سپس به عنوان نمونه فايل را با nano باز كنيد.
⦁
⦁ (env) Sammy@ubuntu:$ nano urls.py
⦁
خطوط كد زير را به فايل اضافه كنيد.
urls.py
from django.urls import path
from . import views
urlpatterns = [
path(‘$/’, views.posts, name=’posts’),
path(‘$/’, views.comments, name=’comments’),
]
اين ها عبارتهاي الگوي URL مورد نياز براي دسترسي به views براي Posts و Comments هستند. ما هنوز آن views را ايجاد نكرده ايم ، اما اين مورد را بعداً در اين مجموعه پوشش خواهيم داد.
مرحله 5 – برنامه وبلاگ را به مدير وصل كنيد
اتصال وبلاگ ما به رابط ادمين به ما اين امكان را مي دهد كه پيوندها را براي Posts و Comments در داشبورد ادمين مشاهده كنيم. در حال حاضر ، داشبورد فقط لينك ها را براي گروه ها و كاربران نمايش مي دهد.
براي اتصال اين دو به يكديگر ، بايد مدل هاي پست ها و كامنت هاي خود را در داخل فايل blogsite ادمين ثبت كنيم.
به ديركتوري blogsite برويد:
⦁ (env) Sammy@ubuntu:$ cd ~/my_blog_app/blog/blogsite
⦁
سپس فايل admin.py را در ويرايشگر متن مورد نظر خود باز كنيد.
⦁ (env) Sammy@ubuntu:$ nano admin.py
⦁
فايل با عبارت ورود و يك كامنت پر مي شود.
admin.py
from django.contrib import admin
# Register your models here.
براي پشتيباني از برنامه خود بايد فايل را طوري ويرايش كنيد كه كد زير را در خود جاي دهد.
admin.py
from django.contrib import admin
from blogsite.models import Post
from blogsite.models import Comment
admin.site.register(Post)
admin.site.register(Comment)
هنگامي كه از فايل راضي هستيد ، آن را ذخيره كنيد و خارج شويد.
اكنون مدل هاي پست و كامنت را در داخل پنل ادمين ثبت كرده ايد. اين كار باعث مي شود تا رابط كاربري اين مدل ها را انتخاب كرده و به كاربراني كه وارد سيستم شده اند و داشبورد ادمين را مشاهده مي كنند ، نشان دهد.
مرحله 6 – بررسي كنيد كه برنامه وبلاگ به ادمين اضافه شده است
اكنون كه كد مربوط به Python را اضافه كرده ايد ، سرور مجازي را اجرا كنيد. http: // your-server-ip: 8000 / admin را باز كنيد و اگر از قبل وارد سيستم نشده ايد ، با استفاده از اطلاعات خود به صورت ادمين وارد شويد. در اين آموزش ، با نام كاربري admin_user و رمز عبور admin123 وارد سيستم شده ايم.
اكنون كه به سيستم وارد شده ايد ، بايد صفحه وب زير به شما ارائه شود. اگر از قبل تغيير نكرده باشد ، ممكن است لازم باشد مرورگر خود را ريفرش كنيد.
اين تأييد مي كند كه ما اكنون برنامه ، blogsite را به داشبورد مدير Django وصل كرده ايم.
هنگامي كه آزمايش برنامه شما به پايان رسيد ، مي توانيد CTRL + C را فشار دهيد تا سرور مجازي Django متوقف شود. اين كار شما را به محيط برنامه نويسي تان باز مي گرداند.
هنگامي كه آماده ترك محيط Python خود هستيد ، مي توانيد دستور غيرفعال كردن را اجرا كنيد:
⦁ (env) Sammy@ubuntu:$ deactivate
⦁
غيرفعال كردن محيط برنامه نويسي، شما را به سمت فرمان نهايي ترمينال باز مي گرداند.
نتيجه
در اين آموزش شما با موفقيت رابط كاربري ادمين را فعال كرده ايد ، يك ورود به سيستم به عنوان ادمين ايجاد كرده ايد و مدل هاي پست و كامنت را با ادمين ثبت كرده ايد.
رابط ادمين Django به اين صورت است كه شما قادر خواهيد بود تا پست هاي خود را ايجاد كنيد و نظرات را با وبلاگ خود نظارت كنيد.
با ورود به اين مجموعه ها، views را براي برنامه وبلاگ ايجاد خواهيم كرد.
برچسب: ،