التحقق المدمج
جزء من قسم النماذج في رحلة 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. تعرض حلقة القالب حقولًا جديدة من دون أي تغيير.
التحدي
سهلأضف حقلين إلى 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)
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس النماذج
2نماذج Django
نموذج في Djangoعرض نموذجتدرّب بنفسك: Playground لـ Django