【发布时间】:2022-10-05 04:19:28
【问题描述】:
出于某种原因,我无法传递参数并收到以下错误,但是,如果我要删除字符串,一切都会正常运行。如果其他人遇到这样的错误,请告诉我如何解决它!
这就是我的 API 的样子:
@router.post("/post")
async def post_request(
db: Session = Depends(database.get_db(string_here="string")
):
return ...
和一个数据库文件
def get_db(string_here: str):
.... returns a db
错误:
raise TypeError('{!r} is not a callable object'.format(obj))
TypeError: <generator object get_db at 0x000001FCFD7A8900> is not a callable object
【问题讨论】:
-
触发错误的实际行是什么?
get_db的实际定义是什么? -
触发错误的行在第一个代码块中,其中 DB 依赖于 get_db()。它是对 get_db() 的调用,它没有到达方法内部。这是触发此错误的调用。
-
对,但是什么
get_db回来了吗?它返回一个函数,还是只返回一个数据库?似乎您正在产生数据库连接,而不是返回依赖调用可以调用的函数。 -
只是一个数据库
标签: database post sqlalchemy fastapi depends