Django: get_default из Charfield показывает пустую строку - PullRequest
1 голос
/ 08 октября 2019

У меня есть поле модели CharField / TextField

location = models.CharField(max_length=30, blank=True)

Теперь я проверяю значение по умолчанию в оболочке Django

[In}: User._meta.get_field('location').get_default()

[Out]: ''

Я не упомянул ни одного значения по умолчаниюЗначение тогда, как это установить на ''?

1 Ответ

0 голосов
/ 08 октября 2019

Возвращает пустую строку, если нет явного значения default. От источника :

def get_default(self):
    """Return the default value for this field."""
    return self._get_default()

@cached_property
def _get_default(self):
    if self.has_default():
        if callable(self.default):
            return self.default
        return lambda: self.default

    if not self.empty_strings_allowed or self.null and not connection.features.interprets_empty_strings_as_nulls:
        return return_None
    return str  # return empty string
...