因此,我一直在测试一些东西,并注意到每当我访问某些查询结果的更新值时,它都会抛出一个错误。看看下面的代码
async def createUser() -> JSONResponse:
async with Session() as session:
userRawQuery = await session.execute(
select(User).filter(User.id == 'some-value')
)
user = userRawQuery.scalar()
# Change Username - For Testing Purposes
user.username = 'John'
await session.commit()
return JSONResponse(
content = {"msg": "Updated Creator Request"},
status_code = 200
)
这段代码运行没有问题。但是当我这样做时
return JSONResponse(
content = {
"user": {
"id": user.id,
"username": user.username,
"age": user.age
}
},
status_code = 200
)
它会产生错误。出于某种原因,访问提交后的数据会产生错误。很奇怪。知道为什么会发生这种情况吗?SQLAlchemy 的同步方法不会出现此错误,但异步方法会出现。
尝试使用替代方法,如“query()”方法,但它不支持 SQLAlchemy 的异步版本
尝试了一下代码,以确定我刚才介绍的操作是否真的会导致错误