Menu
CoddyTech

עמוד לכל משקה

חלק מהיחידה יסודות Django במסלול ה-Django של Coddy. שיעור 7 מתוך 23.

המשקאות של בית הקפה נמצאים כעת ב־DRINKS, מילון בקובץ menu/views.py. המפתחות שלו, כמו flat-white, הם סלאגים: מילים באותיות קטנות שמחוברות במקפים, ונועדו להופיע בכתובת URL.

ממיר ה־slug מתאים לאותיות, לספרות, למקפים ולקווים תחתונים. כאן הוא מספק לכל אחד מחברי הצוות עמוד, שנשלף ממילון:

path("team/<slug:handle>/", views.team_member),


def team_member(request, handle):
    person = STAFF[handle]
    return HttpResponse(f"<h2>{person['role']}</h2>")

עבור /team/maya-cohen/, התצוגה מקבלת handle="maya-cohen" ומשתמשת בו כמפתח. נתיב אחד ותצוגה אחת משרתים את המילון כולו: ערך חדש מקבל עמוד בלי צורך בקוד חדש.

challenge icon

אתגר

קל

תנו לכל משקה ב־DRINKS עמוד בכתובת /drinks/ בתוספת המפתח שלו:

  • נתיב אחד שתואם ל־/drinks/latte/, ל־/drinks/flat-white/ ולכל מפתח אחר;
  • תצוגה בשם drink שמציגה את שם המשקה בתוך <h1>, ולאחר מכן את התיאור שלו בתוך <p>.

לחצו על Run: התצוגה המקדימה נפתחת בכתובת /drinks/latte/.

נסו בעצמכם

from django.http import HttpResponse

DRINKS = {
    "espresso": {"name": "Espresso", "price": 2.5, "description": "A short, strong shot of coffee."},
    "latte": {"name": "Latte", "price": 3.5, "description": "Espresso with lots of steamed milk."},
    "flat-white": {"name": "Flat White", "price": 3.75, "description": "Espresso with a thin layer of silky milk."},
    "hot-chocolate": {"name": "Hot Chocolate", "price": 3, "description": "Dark chocolate melted into warm milk."},
}


def home(request):
    return HttpResponse("<h1>Welcome to Corner Café</h1><p>Fresh coffee and cake every day.</p>")


def about(request):
    return HttpResponse("Corner Café opened in 2026.")


def hours(request):
    return HttpResponse("Open every day from 8:00 to 18:00.")


def contact(request):
    return HttpResponse("Write to us at hello@cornercafe.example.")


def table(request, number):
    return HttpResponse(f"<h1>Table {number}</h1>")
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות Django

תרגלו בעצמכם: Django אונליין