Menu
CoddyTech

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_value trên IntegerField: từ chối số nhỏ hơn.
  • required=False trê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.

challenge icon

Thử thách

Dễ

Sự kiện có phần mô tả và số lượng chỗ.

  1. Trong events/forms.py, thêm description vào EventForm: văn bản trong một ô lớn, có thể để trống. Thêm capacity: một số nguyên ít nhất là 1.
  2. 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)
quiz iconTự kiểm tra

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

Tự luyện tập: Playground Django