0

蟒蛇新手。按照几个教程在 Ubuntu 18.04 上使用 Python 3.6.7、Flask、Gunicorn、NGINX 和 MySQL服务应用程序 ( ddworkflow.com )

教程是:

https://philchen.com/2019/02/11/how-to-make-a-python-web-app-in-virtualenv-using-flask-gunicorn-nginx-on-ubuntu-18-04

https://code.tutsplus.com/tutorials/creating-a-web-app-from-scratch-using-python-flask-and-mysql--cms-22972

我完成了第一个教程,并且能够成功地提供第二个教程中的基本网页。

在虚拟环境中安装所有东西,并使用pip install flask-mysql.

我的点子冻结显示:

Click==7.0
Flask==1.0.2
Flask-MySQL==1.4.0
itsdangerous==1.1.0
Jinja2==2.10
MarkupSafe==1.1.0
PyMySQL==0.9.3
Werkzeug==0.14.1

安装后Flask-MySQL,我通过尝试“from”命令的以下不同变体(在 python 提示符下)来测试安装:

  1. from flask.ext.mysql import MySQL
  2. from flaskext.mysql import MySQL
  3. from flask_mysql import MySQL
  4. from flaskext.mysql import MySQL

1、2、3 都产生ModuleNotFoundError...唯一不抛出错误的是from flaskext.mysql import MySQL

但是,当我添加from flaskext.mysql import MySQL到我的烧瓶应用程序文件 (app01.py) 时,我立即收到 502 bad gateway 错误。我的 app01.py 文件是

from flask import Flask, render_template, json, request
#from flaskext.mysql import MySQL #<--comment out or get 502 error   
hello = Flask(__name__)

@hello.route("/")
def greeting():
    return render_template('index.html')

@hello.route('/showSignUp')
def showSignUp():
    return render_template('signup.html')

@hello.route('/signUp',methods=['POST'])
def signUp(): 
    # read the posted values from the UI
    _name = request.form['inputName']
    _email = request.form['inputEmail']
    _password = request.form['inputPassword']

    # validate the received values
    if _name and _email and _password:
        return json.dumps({'html':'<span>All fields good !!</span>'})
    else:
        return json.dumps({'html':'<span>Enter the required fields</span>'})

if __name__ == "__main__":
    hello.run(host='0.0.0.0')

非常感谢任何帮助消除 502 错误以便我连接到数据库。谢谢你。

4

1 回答 1

0

这可能是 virtualenv 错误,请查看此链接:https ://www.pythonanywhere.com/forums/topic/2877/

与之前非常相似的问题:ImportError: No module named flask.ext.mysql

于 2019-02-22T01:58:08.867 回答