heroku django无法连接到db txn上的服务器

时间:2017-02-19 08:37:05

标签: python django heroku

我在heroku上部署了我的应用程序,但是当我进行数据库操作时,这就是我得到的:

Is the server running on host "127.0.0.1" and accepting
TCP/IP connections on port 5432?

我正在使用Postgres并定义了配置变量中的所有细节:

DB_NAME=xx
DB_USER=xx
DB_PASSWORD=xx
DB_HOST=127.0.0.1
DB_PORT=5432

和代码的一部分:

if request.method == 'POST':
    form = form_signup(request.POST)
    if form.is_valid():
        full_name = form.cleaned_data['full_name']
        username_email = form.cleaned_data['username_email']
        password = form.cleaned_data['password']
        user = User.objects.create_user(username_email,username_email,password)
return HttpResponse("Done")

我该怎么办?

1 个答案:

答案 0 :(得分:1)

在heroku上,您的数据库不会在localhost上运行,而是在云中的某个位置运行。

Heroku在环境变量中将postgres连接URL公开为DATABASE_URL(检查heroku config)。

您可以使用kenneth reitz的dj_database_url软件包自动将其解析为django设置:

import dj_database_url

DATABASES = {
    'default': dj_database_url.config()
}

https://github.com/kennethreitz/dj-database-url

相关问题