10. В чем разница между null=True и blank=True?

Значением по умолчанию для null и blank является False. Оба эти значения работают на уровне поля, т.е. хотим ли мы оставить поле нулевым или пустым.

null=True установит значение поля в NULL, т.е. нет данных. В основном это относится к значению столбца базы данных.:

date = models.DateTimeField(null=True)

blank=True определяет, будет ли поле обязательным в формах. Сюда входят администраторские и ваши собственные пользовательские формы.:

title = models.CharField(blank=True) // title can be kept blank. In the database ("") will be stored.

null=True blank=True Это означает, что поле является необязательным при любых обстоятельствах.:

epic = models.ForeignKey(null=True, blank=True)
// The exception is CharFields() and TextFields(), which in Django are never saved as NULL. Blank values are stored in the DB as an empty string ('').

Также есть особый случай, когда вам нужно принять NULL значения для BooleanField, используйте NullBooleanField.

Вернуться на верх