Menu
CoddyTech

אימות מובנה

חלק מהיחידה טפסים במסלול ה-Django של Coddy. שיעור 9 מתוך 20.

אירוע זקוק לתיאור ולמספר מקומות. כל שדה בטופס בודק סוג משלו של ערך, והארגומנטים שלו מוסיפים כללים. כבר פגשת שניים: כל שדה הוא שדה חובה, ו־max_length=100 דוחה כותרת ארוכה יותר.

  • forms.IntegerField(min_value=1, max_value=5): מספר שלם בין הגבולות.
  • forms.EmailField(): דוחה טקסט שאינו כתובת דוא״ל.
  • required=False בכל שדה: אפשר להשאיר אותו ריק.

רכיב ממשק קובע כיצד שדה מוצג: widget=forms.Textarea יוצר תיבת טקסט גדולה. טופס לביקורת על מוצר:

class ReviewForm(forms.Form):
    stars = forms.IntegerField(min_value=1, max_value=5)
    comment = forms.CharField(widget=forms.Textarea, max_length=500)
    nickname = forms.CharField(required=False)

שדה טקסט אופציונלי ריק נותן "" בתוך cleaned_data; שדה מספר אופציונלי ריק נותן None. הלולאה בתבנית שלך מציגה שדות חדשים ללא שינוי.

challenge icon

אתגר

קל

הוסיפו שני שדות ל־EventForm:

  • description: טקסט בתיבה גדולה, שאפשר להשאיר ריקה.
  • capacity: מספר שלם של 1 לפחות.

ב־new_event, שמרו את שניהם באירוע. לחצו על Run ופתחו את /events/new/.

נסו בעצמכם

from django import forms


class EventForm(forms.Form):
    title = forms.CharField(max_length=100)
    date = forms.DateField()
    place = forms.CharField(max_length=100)
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה טפסים

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