SQLAlchemy DataError关闭事务

时间:2016-04-20 20:41:39

标签: python-2.7 sqlalchemy

我有一个带有public void shutdownExecutor() { executor.shutdown(); try { executor.awaitTermination(requestInfo.getUploadThreadCount() * 30, TimeUnit.SECONDS); } catch (InterruptedException e) { logger.error(e); } } 类型主键的模型。用户可以通过其ID查询模型。如果用户输入非uuid类型的id,我希望能够捕获错误并封送我自己的消息。但是,DataErrors会关闭事务并阻止我验证所有剩余的ID。

如何重新开启交易或阻止其关闭?

代码:

UUID

错误:

try:
    some_model.query.filter_by(id=1).first()
except DataError:
    errors.append('failed :(')

other_model.query.filter_by(id=valid_uuid).first() # InternalError - Would work if it came first.

1 个答案:

答案 0 :(得分:0)

我对UUID主键列的实现很差。我删除了我的实现,而是选择使用sqlalchemy-utils包。 UUIDType列是替代品,并删除了DataError