Menu
CoddyTech

ממירי נתיבים

חלק מהיחידה יסודות 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 והתצוגה אינה מופעלת.

challenge icon

אתגר

קל

תן לכל שולחן עמוד משלו:

  • ב־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 אונליין