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، احفظ كليهما في الفعالية. اضغط على تشغيل وافتح /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اختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس النماذج

تدرّب بنفسك: Playground لـ Django