扫码关注官方订阅号
认证0级讲师
做如下改动后就可以获得u.Id了。
def test_add(other): u = TestClass() u.Other = other session = database.get_session() try: session.add(u) session.commit() return u.Id except: return false finally: session.close()
首先default参数对应的python callable是在真正insert时才开始执行的并且执行后也不会对Id赋值。在commit后执行u.Id实际会发起一次查询并得到真正插入的uuid,但在close后由于session已经关闭就没法进行查询获取Id了。整个SQL执行过程你可以通过在调用create_engine传入echo=True参数看到。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
做如下改动后就可以获得u.Id了。
首先default参数对应的python callable是在真正insert时才开始执行的并且执行后也不会对Id赋值。
在commit后执行u.Id实际会发起一次查询并得到真正插入的uuid,但在close后由于session已经关闭就没法进行查询获取Id了。
整个SQL执行过程你可以通过在调用create_engine传入echo=True参数看到。