我已成功更新SQLAlchemy驱动的数据库中的行(使用How to update SQLAlchemy row entry?的答案)。在我开心之前,我想做一些验证。具体来说,我想
确保此表格中存在该字段(我想我可以使用hasattr
执行此操作)
确保该字段不是主键
答案 0 :(得分:0)
根据ORM类定义提取列列表:
from sqlalchemy import inspect
mapper = inspect(your_orm_class)
columns = [i.key for i in mapper.attrs]
根据ORM类定义提取主键名称:
from sqlalchemy.orm import class_mapper
pk = class_mapper(your_orm_class).primary_key[0].name
然后修改验证函数/类以检查这些值的输入。