AttributeError: 'DictCursor' object has no attribute 'excute'

AttributeError: 'DictCursor' object has no attribute 'excute'

我创建了可以检查已经使用的用户或电子邮件的注册系统,但出现错误 AttributeError:'DictCursor' 对象没有属性 'excute' enter image description here 我使用 flask 框架和 python 请描述 DictCursor 属性或一些解决方案给我

###############insert value(register)##########

@app.route('/new',methods=['GET','POST'])
def user_value():
if request.method=='POST':
    if "one" in request.form and "two" in request.form and "three" in request.form:
        username = request.form['one']
        email = request.form['two']
        password = request.form['three']
        cur = db.connection.cursor(MySQLdb.cursors.DictCursor)
        ###check DATA###
        curs=cur.excute("SELECT * FROM my_db.user_accout WHERE username =%s AND email =%s",thwart(username, email))
        if int(curs)>0:
            flash("User and email already used")
            return render_template("register.html")
        else:
            cur.execute("INSERT INTO my_db.user_accout(username,email,password) VALUES(%s,%s,%s)",(username,email,password))
            db.connection.commit()
            return redirect(url_for("index"))
                
        
        
        
return render_template("register.html")



######show IP in terminal(debugger)#####

if __name__ =='__main__':
app.run(debug=True)

您似乎混淆了两个不同的库。 import MySQLdbfrom flask_mysqldb import MySQL 是两个不同的库。

由于您使用的是 flask 添加此行 app.config['MYSQL_CURSORCLASS'] = 'DictCursor' 然后调用游标 cursor=db.connection.cursor() 应该可以解决您的问题。

取自official git page