我在Flask应用程序中有一个mysql数据库注册表格,但是当我测试它并输入一些有效的凭证时,使用密码no(即使我输入密码)却得到了acces拒绝错误,这是我的连接代码:

app = Flask(__name__)

#config for MySQL db
app.config['MySQL_HOST'] = 'localhost'
app.config['MySQL_USER'] = 'root'
app.config['MySQL_PASSWORD'] = '****'
app.config['MySQL_DB'] = 'myflaskapp'
app.config['MySQL_CURSORCLASS'] = 'DictCursor'
#init MYSQL
mysql = MySQL(app)

Projects = Projects()


这是我的注册烧瓶方法:

@app.route('/register', methods=['GET', 'POST'])
def register():
form = RegisterForm(request.form)
if request.method == 'POST' and form.validate():
    name = form.name.data
    email = form.email.data
    username = form.username.data
    password = sha256_crypt.encrypt(str(form.password.data))


我已经通过命令行验证了MySQL中存在的实际数据库,并且我也可以访问它,但是当我尝试使用flask应用程序时,它失败了。

最佳答案

根据the documentation,配置参数必须全部大写:

app.config['MYSQL_HOST'] = 'localhost'
app.config['MYSQL_USER'] = 'root'
app.config['MYSQL_PASSWORD'] = '****'
app.config['MYSQL_DB'] = 'myflaskapp'
app.config['MYSQL_CURSORCLASS'] = 'DictCursor'


在原始代码中,有一个小写的y

关于python - Flask应用程序从mysql连接中被拒绝访问,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49634105/

10-11 11:49