AttributeError:“函数”对象没有属性“名称”

时间:2020-09-09 00:57:46

标签: python flask

我对Flask有问题。这是我的代码。我遇到了错误
AttributeError: 'function' object has no attribute 'name'

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://postgres:1351996@localhost:5432/example'

db = SQLAlchemy(app)

class Person(db.Model):
    __tablename__ = 'persons'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(), nullable=False)

db.create_all()

@app.route('/')
def index():
    person = Person.query.first
    return 'Hello ' + person.name
    
if __name__ == '__main__':
    app.run(debug=True)

我使用app.run(debug=True)是因为尝试使用FLASK_APP=app.pyflask run运行应用程序时遇到了另一个错误,我不知道为什么这个错误出现在我身上!

1 个答案:

答案 0 :(得分:2)

您实际上并没有执行查询。您的索引函数应该是

@app.route('/')
def index():
    person = Person.query.first()
    return 'Hello ' + person.name

注意.first后面的括号