【问题标题】:Django check to see if field is blank?Django检查字段是否为空?
【发布时间】:2011-06-29 12:56:25
【问题描述】:

我从我的数据库中检索了一个对象。该对象有一个外键字段,属性为blank=True。如何检查它是否真的留空?

感谢您的帮助!

【问题讨论】:

    标签: django


    【解决方案1】:

    blank=True 只是告诉管理站点该字段可以留空。

    除非您也设置了null=True,否则如果您尝试输入空白值,您的数据库应该会报错。

    如果你的外键字段可以取空值,它会在空时返回 None,所以要检查它是否“留空”,你可以简单地检查该字段是否为 None。

    >>>   obj.foreignkeyfield is None
    True
    
    
    if not obj.foreignkeyfield:
        print "This field was left blank"
    

    【讨论】:

    • is None和if not有什么区别?
    • @hobbes3,对于 FK 字段,这并不重要。我使用一个表达式来显示控制台输出作为示例。 is None 仅在 val == None 时为 True,而 if not 仅检查 bool(val) == False。 bool(0)、bool('') 都评估为 False。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-28
    • 2012-02-21
    • 1970-01-01
    • 2020-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多