ממירי נתיבים
חלק מהיחידה יסודות Django במסלול ה-Django של Coddy. שיעור 6 מתוך 23.
לכל שולחן בבית הקפה יש קוד QR, וכל קוד צריך דף משלו. נתיב אחד יכול להתאים לכולם כשחלק ממנו הוא ממיר נתיבים. לוח שנה עשוי להשתמש בשניים:
path("calendar/<int:year>/<int:month>/", views.calendar),החלק שבין הסוגריים הזוויתיים הוא ממיר: סוג, נקודתיים, שם. int מתאים למספר שלם והופך אותו ל-int של Python. התצוגה מקבלת כל ערך כארגומנט בשם הזה:
def calendar(request, year, month):
return HttpResponse(f"<h2>{month} / {year}</h2>")עבור /calendar/2026/3/, Django קוראת ל-calendar(request, year=2026, month=3). כתובת שהממיר אינו תואם, כמו /calendar/next/3/, מחזירה 404 והתצוגה אינה מופעלת.
אתגר
קלתן לכל שולחן עמוד משלו:
- ב־
menu/urls.py, נתיב אחד שתואם ל־/table/5/, ל־/table/12/ולכל מספר שלם אחר; - ב־
menu/views.py, תצוגהtableשמחזירה<h1>Table 5</h1>עבור שולחן 5, וכן הלאה.
/table/abc/ מחזיר 404. לחצו על Run: התצוגה המקדימה נפתחת ב־/table/5/.נסו בעצמכם
from django.urls import path
from . import views
urlpatterns = [
path("", views.home),
path("about/", views.about),
path("hours/", views.hours),
path("contact/", views.contact),
]
כל השיעורים ביחידה יסודות Django
תרגלו בעצמכם: Django אונליין