tôi có mô hình sau đây trong Django 1.5:Mô hình Django trống = False không hoạt động?
class Person(models.Model):
name = models.CharField(max_length=50)
Lưu ý rằng theo https://docs.djangoproject.com/en/dev/ref/models/fields/ name.blank là theo mặc định False có nghĩa là nó phải được xác định.
Tuy nhiên, tôi có thể tạo ra thành công một đối tượng Person như sau:
Person.objects.create()
Thông báo tên không được chỉ định. Chuyện gì vậy?
Ok, câu trả lời từ các tài liệu là:
Lưu ý rằng đây là khác biệt so với null. null là hoàn toàn liên quan đến cơ sở dữ liệu, trong khi trống là liên quan đến xác thực. Nếu một trường trống = True, xác thực biểu mẫu sẽ cho phép nhập một giá trị trống. Nếu một trường trống = False, trường sẽ được yêu cầu.
Một bắt:
Lưu ý rằng xác nhận sẽ không được chạy tự động khi bạn lưu một mô hình, nhưng nếu bạn đang sử dụng một ModelForm, nó sẽ chạy xác nhận của bạn trên bất kỳ lĩnh vực được bao gồm trong của bạn hình thức.
Bạn có trách nhiệm gọi các phương thức sạch trước khi lưu nếu bạn không sử dụng biểu mẫu.
Thứ nhất, whats up với điều này ' name = ... 'KHÔNG làm điều này. –
ý của bạn là gì? – Lucas
Tôi tin rằng Trò chơi đang đề cập đến thụt đầu dòng. Nó không được khuyến cáo thực hành mã hóa cho mỗi PEP-8. – bernie