簡體   English   中英

Django CharField 空白與默認為空

[英]Django CharField blank vs default empty

Django 應用程序中的這兩個字段有什么區別? 我應該期待什么行為?

field_a = CharField(max_length=50, verbose_name='field_a', blank=True)
field_b = CharField(max_length=50, verbose_name='field_b', blank=True, default='')

如果未給出default值,則根據以下代碼(取自django/db/models/fields/__init__.py 源代碼)為CharField使用空字符串:

def get_default(self):
    """
    Returns the default value for this field.
    """
    if self.has_default():
        if callable(self.default):
            return self.default()
        return self.default
    if (not self.empty_strings_allowed or (self.null and
               not connection.features.interprets_empty_strings_as_nulls)):
        return None
    return ""

所以他們應該表現得一樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM