در این مقاله از کرالاهاست، یک راهنمای جامع برای نصب جنگو، راه اندازی یک محیط مجازی و پیکربندی یک پروژه برای شروع توسعه وب خود ارائه می دهد.
معرفی جنگو
جنگو، یک چارچوب وب سطح بالا و منبع باز پایتون است که توسعه دهندگان را قادر می سازد تا برنامه های وب قوی و مقیاس پذیر را به سرعت ایجاد کنند.
پیش نیازهای نصب جنگو
قبل از ورود به مراحل نصب جنگو، مطمئن شوید که پیش نیازهای زیر را نصب کرده و آماده استفاده هستید:
- پایتون: جنگو برای اجرا، به پایتون نیاز دارد. برای بررسی اینکه آیا پایتون قبلاً روی سیستم شما نصب شده است یا خیر، دستور را اجرا کنید python –versionیا python3 –version. این دستور را می بایست در ترمینال یا خط فرمان خود اجرا کنید. اگر نصب نیست، آخرین نسخه پایتون را از وب سایت رسمی پایتون دانلود کنید .
- pip: pip نصب کننده بسته، برای پایتون است. Pip برای نصب جنگو و سایر بسته های پایتون، ضروری است. اگر پایتون 3.4 یا جدیدتر دارید، پیپ به طور پیشفرض گنجانده شده است. در غیر این صورت، پیپ را طبق راهنمای نصب رسمی پیپ دانلود و نصب کنید .
پیشنهاد می کنیم از پست جنگو یا جاوا اسکریپت دیدن کنید.
راه اندازی یک محیط مجازی
ایجاد یک محیط مجازی بهترین روش برای جداسازی وابستگی های پروژه، و جدا نگه داشتن آنها، از نصب جهانی پایتون است. برای راه اندازی یک محیط مجازی مراحل زیر را دنبال کنید:
Virtualenv را نصب کنید: دستور زیر را برای نصب بسته virtualenv با استفاده از pip اجرا کنید:
pip install virtualenv
ایجاد یک محیط مجازی: با استفاده از ترمینال یا خط فرمان، به دایرکتوری پروژه خود بروید و دستور زیر را برای ایجاد یک محیط مجازی جدید اجرا کنید:
virtualenv myenv
myenv: نام مورد نظر را برای محیط مجازی خود جایگزین کنید.
فعال کردن محیط مجازی: برای فعال کردن محیط مجازی، دستور مناسب برای سیستم عامل خود را اجرا کنید:
در macOS و Linux:
source myenv/bin/activate
در ویندوز:
myenv\Scripts\activate
خط فرمان یا ترمینال شما، اکنون باید نام محیط مجازی را قبل از خط فرمان نشان دهد.
نصب جنگو
با فعال شدن محیط مجازی، Django را با استفاده از دستور زیر نصب کنید:
pip install django
این دستور، آخرین نسخه جنگو را نصب می کند. اگر به نسخه خاصی نیاز دارید، می توانید آن را به صورت زیر مشخص کنید:
pip install django==3.2.8
3.2.8با شماره نسخه مورد نظر جایگزین کنید .
ایجاد پروژه جنگو
اکنون که جنگو نصب شده است، می توانید با استفاده از دستور زیر یک پروژه جنگو جدید ایجاد کنید:
django-admin startproject myproject
myproject ، نام مورد نظر را برای پروژه خود جایگزین کنید. این دستور، یک دایرکتوری جدید با همان نام پروژه شما ایجاد می کند که حاوی فایل ها و دایرکتوری های لازم، برای برنامه جنگو است.
پیکربندی پایگاه داده جنگو
جنگو با یک پیکربندی پیش فرض پایگاه داده، با استفاده از SQLite ارائه می شود. برای تغییر تنظیمات پایگاه داده، مراحل زیر را دنبال کنید:
settings.py فایلی را که در دایرکتوری اصلی پروژه خود قرار دارد باز کنید.
دیکشنری پیکربندی را پیدا کنید. DATABASESو تنظیمات را مطابق با موتور پایگاه داده مورد نظر خود، تغییر دهید. به عنوان مثال، برای استفاده از PostgreSQL ، می توانید تنظیمات را به صورت زیر به روز کنید:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydatabase',
'USER': 'myuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '5432',
}
}
جانشین ها را با اطلاعات پایگاه داده واقعی خود جایگزین کنید.
اجرای سرور توسعه جنگو
با راه اندازی و نصب جنگو، و پیکربندی پروژه جنگو، زمان اجرای سرور توسعه فرا رسیده است. این سرور به شما امکان می دهد برنامه خود را به صورت محلی مشاهده و آزمایش کنید. برای اجرای سرور توسعه مراحل زیر را دنبال کنید:
با استفاده از ترمینال یا خط فرمان، به دایرکتوری اصلی پروژه خود بروید.
دستور زیر را برای راه اندازی سرور توسعه اجرا کنید:
python manage.py runserver
باید خروجی را ببینید که نشان می دهد سرور در حال اجرا است، همراه با آدرس و شماره پورت (معمولا http://127.0.0.1:8000/).
مرورگر وب خود را باز کنید و آدرس ارائه شده توسط سرور توسعه را وارد کنید. شما باید صفحه پیشفرض خوشآمدگویی جنگو را ببینید که نشان میدهد پروژه شما با موفقیت اجرا میشود.
ایجاد یک برنامه جنگو
پروژه های جنگو، از اجزای کوچکتری به نام اپلیکیشن تشکیل شده اند. برای ایجاد یک برنامه جدید در پروژه خود، این مراحل را دنبال کنید:
با استفاده از ترمینال یا خط فرمان به دایرکتوری اصلی پروژه خود بروید.
دستور زیر را برای ایجاد یک برنامه جدید اجرا کنید:
python manage.py startapp myapp
myapp ، نام مورد نظر خود را جایگزین کنید .
برنامه جدید ایجاد شده خود را به INSTALLED_APPSلیست فایل پروژه خود اضافه کنید. settings.pyاین مرحله، برای جنگو برای شناسایی اپلیکیشن شما و گنجاندن اجزای آن در پروژه بسیار مهم است.
شما در حال مطالعه مقاله نصب جنگو هستید.
نمای ساختمان و الگوها
در جنگو، view ها منطق پردازش درخواست های کاربر و بازگرداندن پاسخ ها را مدیریت می کنند. از الگوها برای تعریف ساختار و چیدمان HTML که به کاربر بازگردانده می شود استفاده می شود.
ایجاد نمای: در فایل برنامه خود views.py، یک تابع نمای جدید ایجاد کنید. به عنوان مثال، یک نمای ساده که یک “سلام، جهان!” پیام می تواند شبیه این باشد:
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello, World!")
ایجاد یک الگوی URL: برای نگاشت نمای خود به یک URL خاص، یک الگوی URL جدید، در فایل برنامه خود اضافه کنید. urls.pyاگر این فایل وجود ندارد، آن را با محتوای زیر ایجاد کنید:
from django.urls import path
from . import views
urlpatterns = [
path('hello/', views.hello, name='hello'),
]
این کد helloنما را به /hello/URL نشان می دهد.
URL های برنامه خود را وارد کنید: برای دسترسی به URL های برنامه خود، آنها را urls.pyبا افزودن خط زیر در فایل اصلی پروژه خود قرار دهید:
path('myapp/', include('myapp.urls')),
myapp ، نام برنامه خود را جایگزین کنید .
ایجاد یک الگو: در فهرست برنامه خود templates، یک فایل HTML جدید با ساختار و محتوای دلخواه ایجاد کنید. مثلا:
<!DOCTYPE html>
<html>
<head>
<title>Hello, World!</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
برای استفاده از الگو، نما را به روز کنید: عملکرد view خود را در views.pyفایل تغییر دهید تا از قالبی که ایجاد کرده اید استفاده کنید:
from django.shortcuts import render
def hello(request):
return render(request, 'myapp/hello.html')
myappبا نام برنامه خود و hello.htmlبا نام قالب خود جایگزین کنید .
استقرار برنامه جنگو شما
فرآیند استقرار ممکن است بسته به ارائه دهنده هاست و پیکربندی سرور شما متفاوت باشد، در ادامه مقاله نصب جنگو، یک نمای کلی از مراحل را اشاره می کنیم:
یک ارائه دهنده میزبانی را انتخاب کنید:
یک ارائه دهنده میزبان مناسب را انتخاب کنید که از Python و Django پشتیبانی می کند. برخی از گزینه های محبوب عبارتند از Heroku , Digital Ocean , AWS و Google Cloud Platform که هرکدام، کاربرد خاص خود را دارد.
سرور خود را پیکربندی کنید:
سرور خود را مطابق دستورالعمل های ارائه دهنده هاست خود تنظیم کنید. ممکن است نیاز به نصب نرم افزارهای اضافی مانند وب سرورT به عنوان مثال، Nginx یا Apache) و یک سرور پایگاه داده (به عنوان مثال، PostgreSQL یا MySQLداشته باشید.
نصب جنگو و سایر وابستگی ها:
مطمئن شوید که جنگو و تمام وابستگی های مورد نیاز روی سرور، نصب شده اند. می توانید از requirements.txt فایلی استفاده کنید که تمام بسته های لازم را فهرست می کند و pip install -r requirements.txt برای نصب آنها، اجرا کنید.
فایل های پروژه خود را انتقال دهید:
از یک روش امن مانند SFTP یا SCP ، برای انتقال فایل های پروژه خود به سرور استفاده کنید. اطمینان حاصل کنید که تمام فایلهای لازم مانند پروژه جنگو، برنامهها و فایلهای استاتیک را شامل میشود.
تنظیمات جنگو را پیکربندی کنید:
settings.py فایل را در پروژه خود، به روز کنید تا از پایگاه داده تولید و تنظیمات سرور استفاده کنید. همچنین، DEBUG تنظیم را روی آن تنظیم کنید False و ALLOWED_HOSTSتنظیمات را طوری پیکربندی کنید که شامل نام دامنه یا آدرس IP سرور شما باشد.
جمعآوری فایلهای استاتیک:
دستور زیر را اجرا کنید تا تمام فایلهای استاتیک پروژه خود را جمعآوری کرده و در یک فهرست واحد قرار دهید:
python manage.py collectstatic
این مرحله، برای سرور وب برای ارائه فایل های ثابت مانند CSS، جاوا اسکریپت و تصاویر ضروری است.
سرور وب را پیکربندی کنید:
وب سرور خود را تنظیم کنید تا به برنامه جنگو شما، سرویس دهد. این فرآیند، شامل پیکربندی سرور برای ارسال درخواستها به برنامه جنگو با استفاده از سرور WSGI رابط دروازه وب سرور مانند Gunicorn یا uWSGI است. برای اطلاعات بیشتر در مورد پیکربندی وب سرور خود، با اسناد رسمی جنگو مشورت کنید .
برنامه خود را آزمایش کنید:
پس از استقرار برنامه جنگو، از نام دامنه یا آدرس IP سرور خود، در مرورگر وب خود بازدید کنید تا مطمئن شوید که برنامه شما به درستی اجرا می شود.
نتیجه گیری
در این مقاله راهنمای جامع نصب جنگو از سایت کرالاهاست، راه اندازی پروژه و استقرار جنگو را ارائه کرده ایم. با دنبال کردن این مراحل، می توانید یک برنامه وب قوی و مقیاس پذیر با استفاده از جنگو، ایجاد کنید.
به یاد داشته باشید که بهترین شیوه ها را در توسعه وب و جنگو رعایت کنید، مانند استفاده از یک محیط مجازی، سازماندهی کد خود با برنامه ها، و ایمن نگه داشتن تنظیمات تولید خود.
در پایان توصیه می کنیم، با قابلیت های جنگو آشنا شوید.