我已将模型类中列的映射设置为
class Plan(Base):
__tablename__ = "plans"
`default_c = Column(Boolean, default=False)`
但是当我使用将数据插入此表时。下面的代码。我仍然得到(exceptions.TypeError) Not a boolean value: ''
。我的字典中的default_c
字段为空。我想知道default
是否应该处理这个问题。
conn.execute(Plan.__table__.insert(), Plan_dict)
Plan_dict是我要插入到计划表中的字典列表。
答案 0 :(得分:3)
根据documentation,如果您不提供该列,则它将填充默认值
表示此列默认值的标量,Python可调用或ColumnElement表达式,如果在插入的VALUES子句中未指定此列,则将在插入时调用该表达式。这是将ColumnDefault用作位置参数的快捷方式。有关该参数的结构的详细信息,请参见该类。
我觉得您正在给default_c
一个空值。从default_c
中删除Plan_dict
,然后尝试一下。