Tôi chỉ tò mò liệu có ai biết lý do chính đáng tại sao orm của django không gọi 'full_clean' trên một mô hình trừ khi nó được lưu dưới dạng một phần của mẫu mô hình.
Lưu ý rằng full_clean () sẽ không được gọi tự động khi bạn gọi phương thức save () của mô hình. Bạn sẽ cần gọi thủ công khi bạn muốn chạy xác thực mô hình một bước cho các mô hình được tạo thủ công của riêng bạn. tài liệu sạch hoàn toàn của django
(LƯU Ý: trích dẫn được cập nhật cho Django 1.6 ... các tài liệu django trước đó cũng có một cảnh báo về ModelForms.)
Có lý do chính đáng tại sao mọi người sẽ không muốn hành vi này? Tôi nghĩ rằng nếu bạn dành thời gian để thêm xác thực cho một mô hình, bạn sẽ muốn xác thực đó chạy mỗi khi mô hình được lưu.
Tôi biết làm thế nào để mọi thứ hoạt động bình thường, tôi chỉ tìm kiếm một lời giải thích.
pre_save
móc và làm full_clean
trên tất cả các mô hình bị bắt.