程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了我正在处理 Flask + ReactJs 项目,并且在我的 Flask api 中收到此错误:AttributeError: 'Employee' object has no attribute 'append'大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决我正在处理 Flask + ReactJs 项目,并且在我的 Flask api 中收到此错误:AttributeError: 'eR_749_11845@ployee' object has no attribute 'append'?

开发过程中遇到我正在处理 Flask + ReactJs 项目,并且在我的 Flask api 中收到此错误:AttributeError: 'eR_749_11845@ployee' object has no attribute 'append'的问题如何解决?下面主要结合日常开发的经验,给出你关于我正在处理 Flask + ReactJs 项目,并且在我的 Flask api 中收到此错误:AttributeError: 'eR_749_11845@ployee' object has no attribute 'append'的解决方法建议,希望对你解决我正在处理 Flask + ReactJs 项目,并且在我的 Flask api 中收到此错误:AttributeError: 'eR_749_11845@ployee' object has no attribute 'append'有所启发或帮助;

这是我的烧瓶 API 代码。我已经使用 sqlalchemy 连接了数据库并为表查询创建了一个模型。 我正在处理 Flask + ReactJs 项目,并且在我的 Flask API 中收到此错误:AttributeError: 'employee' object has no attribute 'append'。

from flask import Flask,Jsonify,request
from flask_sqlalchemy import sqlAlchemy
import Json

with open('C:\\Users\\new\\Desktop\\ems\\API\\venv\\config.Json','r') as c:
    params = Json.load(C)["params"]

local_server = True
app = Flask(__name__)
app.secret_key = 'super-secret-key'
app.config['UPLOAD_FolDER'] = params['upload_LOCATIOn']

if local_server:
    app.config['sqlALCHEmy_database_URI'] = params['local_uri']
else:
    app.config['sqlALCHEmy_database_URI'] = params['prod_uri']

db = sqlAlchemy(app)

class employee(db.Model):
    sno = db.column(db.Integer,priMary_key=TruE)
    ID = db.column(db.Integer,nullable=False)
    name = db.column(db.String,nullable=False)
    email = db.column(db.String,nullable=False)
    contact = db.column(db.Integer,nullable=False)
    designation = db.column(db.String,nullable=False)
    date = db.column(db.String,nullable=TruE)


@app.route("/employee")
def employee():
    employee_List = employee.query.all()
    employee = []
    for employee in employee_List:
        employee.append({'ID' : Employee.id,'name' : employee.name,'email' : employee.email,'contact' : employee.contact,'designation' : employee.designation})
    return Jsonify({'employee' : employeE})


@app.route("/add",methods=['POST'])
def add():
    employee_data = request.get_Json()
    new_employee = employee(ID = employee_data['ID'],name = employee_data['name'],email = employee_data['email'],contact = employee_data['contact'],designation = employee_data['designation'])
    db.session.add(new_employeE)
    db.session.commit()
    return 'Added successfully',201


if __name__ == '__main__':
    app.run(deBUG=TruE)```

解决方法

您有三个同名的对象(这不是一个好习惯,因为它会使您感到困惑并最终引入您刚刚遇到的错误):

  • employee (1):flask 路由函数
  • employee (2):您要附加到的空列表
  • employee (3):for 循环中当前元素的名称

每次在同一个命名空间中创建一个同名的新变量时,旧变量都会被覆盖。在您的情况下,函数 employee() 没有问题。但是这两个变量 employee = []for employee in employee_list: 最终发生冲突,python 最终删除了 employee = [],现在 employee 指向循环中的项目,它没有一个 append 方法,因为它是来自类 employee 的对象。

要解决此问题,请更改列表名称或循环变量的名称。

@app.route("/employee")
def employee():
    employee_list = employee.query.all()
    employees = [] # <--- changed from `employee` to `employees`
    for employee in employee_list:
        employee.append({'id' : Employee.id,'name' : employee.name,'email' : employee.email,'contact' : employee.contact,'designation' : employee.designation})
    return jsonify({'employee' : employeE}) # <--- changed from `employee` to `employees`

大佬总结

以上是大佬教程为你收集整理的我正在处理 Flask + ReactJs 项目,并且在我的 Flask api 中收到此错误:AttributeError: 'Employee' object has no attribute 'append'全部内容,希望文章能够帮你解决我正在处理 Flask + ReactJs 项目,并且在我的 Flask api 中收到此错误:AttributeError: 'Employee' object has no attribute 'append'所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。