Xác thực tích hợp
Thuộc phần Biểu mẫu trong hành trình Django của Coddy. Bài học 9 trên 20.
Một sự kiện cần có mô tả và số chỗ. Mỗi trường biểu mẫu kiểm tra một kiểu giá trị riêng, còn các đối số của trường đặt thêm quy tắc. Bạn đã gặp hai quy tắc: mọi trường đều bắt buộc, và max_length=100 từ chối tiêu đề dài hơn.
min_valuetrênIntegerField: từ chối số nhỏ hơn.required=Falsetrên bất kỳ trường nào: có thể để trống.
Widget quyết định cách hiển thị một trường: widget=forms.Textarea tạo một khung nhập văn bản lớn. Biểu mẫu đặt chỗ cho trò chơi cờ bàn:
class TableForm(forms.Form):
players = forms.IntegerField(min_value=2)
wishes = forms.CharField(widget=forms.Textarea, max_length=500)
phone = forms.CharField(required=False)Trường văn bản tùy chọn để trống sẽ cho giá trị "" trong cleaned_data; trường số tùy chọn để trống sẽ cho giá trị None. Vòng lặp trong template của bạn sẽ hiển thị các trường mới mà không cần thay đổi.
Thử thách
DễSự kiện có phần mô tả và số lượng chỗ.
- Trong
events/forms.py, thêmdescriptionvàoEventForm: văn bản trong một ô lớn, có thể để trống. Thêmcapacity: một số nguyên ít nhất là 1. - Trong
new_event, lưu cả hai giá trị vào sự kiện.
Thêm một sự kiện có sức chứa 25 và không có phần mô tả: trang của sự kiện hiển thị 25 chỗ.
Tự làm thử
from django import forms
class EventForm(forms.Form):
title = forms.CharField(max_length=100)
date = forms.DateField()
place = forms.CharField(max_length=100)
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Biểu mẫu
2Biểu mẫu Django
Một biểu mẫu DjangoTạo biểu mẫuTự luyện tập: Playground Django