gpt4 book ai didi

python - Flask View 引发 "AttributeError: ' 函数'对象没有属性"

转载 作者:行者123 更新时间:2023-12-04 01:15:52 25 4
gpt4 key购买 nike

app.py定义了 sectors使用 Sectors 的 View sectors.py 中定义的类.当我访问 View 时,我得到一个 AttributeError :

    sector = sectors.Sectors()
AttributeError: 'function' object has no attribute 'Sectors'
import sectors

@app.route("/sectors")
def sectors():
sector = sectors.Sectors()
return render_template('sectors.html', sector=sector)

我进口了 sectors ,所以它应该是一个模块,而不是一个函数,它确实有 Sectors定义。为什么这不起作用?

最佳答案

您的 View 函数的名称与您之前导入的名称相同。由于 View 函数是在文件中导入之后定义的,所以它是名称所指向的。

或者别名导入:

import sectors as sectors_mod

@app.route("/sectors")
def sectors():
sectors_mod.Sectors()
...

或者更改函数的名称。您仍然可以将端点名称保留为 "sectors"用于 url_for .

import sectors

@app.route("/sectors", endpoint="sectors")
def sectors_view():
sectors.Sectors()
...

在任何一种情况下,导入和函数的名称都是不同的,并且端点名称保持为 "sectors"在这两种情况下,所以 url_for("sectors")仍然有效。

关于python - Flask View 引发 "AttributeError: ' 函数'对象没有属性",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54160486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com