Flask:类型错误:“str”对象不可调用

blu*_*ank 7 python flask

我有一个生成的烧瓶应用程序,它给了我这个回溯:

Traceback (most recent call last):
  File "/home/.virtualenvs/j/lib/python2.7/site-packages/flask/app.py", line 1701, in __call__
    return self.wsgi_app(environ, start_response)
  File "/home/.virtualenvs/j/lib/python2.7/site-packages/flask/app.py", line 1689, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/home/.virtualenvs/j/lib/python2.7/site-packages/flask/app.py", line 1687, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/.virtualenvs/j/lib/python2.7/site-packages/flask/app.py", line 1360, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/.virtualenvs/j/lib/python2.7/site-packages/flask/app.py", line 1358, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/.virtualenvs/j/lib/python2.7/site-packages/flask/app.py", line 1344, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
TypeError: 'str' object is not callable
Run Code Online (Sandbox Code Playgroud)

但目前我无法确定原因或原因。该应用程序启动并似乎正在运行,但每当我尝试访问路线时都会因此回溯而窒息。

这是什么以及什么会导致这种情况?我不知道什么对象是 str 以及为什么它不可调用。这是我第一次看到这样的事情。

Ste*_*ppo 5

这意味着它self.view_functions[rule.endpoint]是一个字符串,而不是一个函数,因此不能被调用(使用(...)运算符)。也就是说,如果没有代码,很难判断问题所在:Flask 期望调用一个函数并获取一个字符串。你用过@app.route装饰器吗?

尝试打印 的值self.view_functions[rule.endpoint]并查看结果。