Tôi thấy rằng khi tôi chèn không có gì của một chuỗi form field
thông qua một biểu mẫu, nó nắm bắt nó như là một chuỗi rỗng ''
.django null và trống chuỗi
Tuy nhiên, khi tôi không chèn gì vào số nguyên form field
thông qua biểu mẫu, nó sẽ chụp số nguyên là [null]
.
Đây có phải là phương pháp hay không? Chuỗi có nên là null
cũng như trong db không?
Nếu trong cơ sở dữ liệu của tôi, tôi thiết lập một trường để ALLOW NULL, sau đó tôi mong đợi Không được lưu trữ như NULL, không phải là một chuỗi rỗng. Nó là tốt cho Django để có quy ước của nó, nhưng Django không nhất thiết phải là hệ thống duy nhất truy cập vào cơ sở dữ liệu. Nếu một ứng dụng riêng biệt có thể lưu trữ NULL thì bạn sẽ phải kiểm tra chuỗi rỗng so với rỗng. Tuy nhiên, một giá trị 'if not' đơn giản sẽ kiểm tra cả trong Python. – six8
Nó có thể là 'django thực hành' nhưng trong cơ sở dữ liệu nói chung bằng cách sử dụng chuỗi rỗng để đại diện cho dữ liệu bị thiếu là thực hành xấu. Đó là những gì NULL là cho. Tôi thực sự muốn đây không phải là thực hành tiêu chuẩn trong django. – Darren
Nó không phải là một thực hành tốt nó là một quy ước được giới thiệu trong những ngày đầu, vì không phải xử lý 'None' trong các mẫu và không phải làm sạch các trường mẫu trống thành' None'. Đó là một lối tắt để hoàn thành công việc một cách nhanh chóng, nhưng chúng ta nên biện minh cho nó như là một thực hành tốt ngay bây giờ, bởi vì nó là sự lười biếng hoặc thiếu thời gian cho chúng ta "thực hành" này. Đó là lý do tại sao chúng tôi hiện có 2 thuộc tính trường xử lý nội dung này. –