Python 使用sqlalchemy检查空值

Python 使用sqlalchemy检查空值,python,sqlalchemy,Python,Sqlalchemy,当我想检查空值时,我似乎永远无法正确地进行筛选调用 这个功能是否不必要 def sqla_false(field): if field.type.__class__ == db.String: return db.or_(field == None, field == '') return field == None sqlalchemy如何存储未设置的字段? 如果我的一个wtforms表单发送一个“”作为其中一个字段的值,当我调用form.populate_o

当我想检查空值时,我似乎永远无法正确地进行筛选调用

这个功能是否不必要

def sqla_false(field):
    if field.type.__class__ == db.String:
        return db.or_(field == None, field == '')
    return field == None
sqlalchemy如何存储未设置的字段? 如果我的一个wtforms表单发送一个“”作为其中一个字段的值,当我调用form.populate_obj(obj)时,数据库中是否会存储NULL或“”?

如果发送
'
,则该字段将被存储并读取为空字符串。如果发送
None
,则将其存储为
NULL
,并读取为
None
。使用
isinstance(字段,db.String)
检查类型。使用
db.和(field.isnot(None),field!='')
检查它是否具有非空字符串值