【发布时间】:2021-06-11 12:51:47
【问题描述】:
我是网络开发的新手。我有一个 Django 项目,它在其中一个页面上加载了一个 Dash 应用程序。 dash 应用程序会生成一个图表,允许用户从数据库中选择某些数据集。
直接在我的 App.py(dash 应用程序)中,我放置了我的 sqlalchemy 数据库连接变量,其中一个回调用于在请求时获取数据。
sqlEngine = sa.create_engine('mysql+pymysql://host:password@127.0.0.1:3306/db', pool_recycle=3600)
dbConnection = sqlEngine.connect()
conn = pymysql.connect(host='127.0.0.1',user='host',password='password',db='db')
cursor = conn.cursor()
app = DjangoDash(name='app', add_bootstrap_links=True, serve_locally = False)
...
@app.callback(...)
def fetch_data(...):
select = """SELECT * FROM `db`.`table`;"""
df = pd.read_sql(select, dbConnection)
我不确定这在生产环境中是否安全。在 dash 应用程序内连接到数据库的最佳/最安全方式是什么。
我的 Django 应用程序也连接到数据库以进行迁移。感谢您提供任何帮助/建议。
【问题讨论】:
标签: django sqlalchemy plotly-dash pymysql