【发布时间】:2018-09-02 02:26:03
【问题描述】:
我已经将一个 python-django 项目推送到 heroku,它运行良好。在我的 django 模型的 view.py 文件中,我添加了可以连接到本地 mysql 数据库以从 mysql 检索数据的功能。函数是view.py如下:
@login_required
def results(request):
data=[]
data1 = []
owner = request.user
owner = str(owner)
db = MySQLdb.connect(user='root', db='aaa', passwd='xxxxx', host='localhost')
cursor = db.cursor()
cursor.execute("SELECT search_content, id, title, author, institute, FROM result_split where username = '%s'" % (owner))
data = cursor.fetchall()
db.close()
return render(request, "webdevelop/results.html", {"datas": data})
但是,当我尝试在已部署的 heroku 网站中打开显示来自 mysql 数据库的数据的页面时,它显示错误:“OperationalError at /results/ (2003, "Can't connect to MySQL server on 'localhost' ([Errno 111] Connection denied)")"。我怎样才能让这个 heroku 项目连接到我的本地 mysql 数据库?或者我应该选择替代方案?
【问题讨论】:
-
这里有很多问题。您希望如何连接到 localhost 上的 mysql? Heroku 不会在与您的应用程序相同的服务器上运行数据库。购买你为什么要明确地更正到一个数据库而不是使用模型 API?
标签: python mysql django heroku