جنگو یکی از محبوبترین فریمورکهای توسعه وب به زبان پایتون است که توسعهدهندگان بسیاری به خاطر سرعت و قابلیتهای پیشرفتهاش آن را انتخاب میکنند. یکی از اولین کارهایی که هنگام ساخت یک پروژه جنگو انجام میدهید، ایجاد صفحه اصلی (index page) است. این صفحه به عنوان نمای اصلی سایت شما عمل میکند و معمولاً شامل لینکها و اطلاعاتی ابتدایی درباره سایت شما میباشد.
برای افزودن یک صفحه اصلی در جنگو، ابتدا باید یک view ایجاد کنید. View در حقیقت تابع یا کلاسی است که یک HttpResponse برمیگرداند. معمولاً این response شامل یک template HTML است که در آن محتوای صفحه را نشان میدهید.
گام بعدی ایجاد یک URL pattern است که صفحه اصلی را به یک آدرس URL مشخص متصل میکند. این کار با استفاده از فایل urls.py انجام میشود. شما میتوانید دقیقاً مشخص کنید که با وارد کردن چه آدرسی در مرورگر، کاربر به صفحه اصلی هدایت شود.
در نهایت، باید template خود را بسازید. Templates به شما امکان میدهند به طور موثر مطالب ایستا را به همراه دادههای داینامیک نمایش دهید. این کار با استفاده از زبان قالبنویسی جنگو که شبیه HTML است، انجام میشود.
حال بیایید به هر یک از این مراحل نگاهی بیندازیم و کدی که باید نوشته شود را بررسی کنیم:
# views.py
from django.shortcuts import render
def index(request):
return render(request, 'index.html')
# urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
# index.html
<!DOCTYPE html>
<html>
<head>
<title>صفحه اصلی</title>
</head>
<body>
<h1>به سایت من خوش آمدید</h1>
<p>این صفحه نخست سایت است.</p>
</body>
</html>
توضیح مرحله به مرحله کد
def index(request):
این تابع view برای مدیریت درخواستهای مربوط به صفحه اصلی استفاده میشود.
return render(request, 'index.html')
این خط از کد template مربوط به index.html را رندر کرده و بهعنوان response به کاربر برمیگرداند.
path('', views.index, name='index')
این بخش در urls.py نشان میدهد که URL ریشه سایت (مثلا www.example.com) به view مربوط به صفحه اصلی متصل میشود.
HTML اشارهشده در index.html
یک قالب ساده که حاوی متن و یک عنوان است.