因此,我正在使用heroku (目前)托管我的discord.py机器人。最近我开始使用postgres作为数据库,这是连接代码:
我使用此代码进行连接:
import asyncpg
async def create_db_pool():
client.pg_con = await asyncpg.create_pool(DATABASE_URL) #db url goes here
client.loop.run_until_complete(create_db_pool())
client.run(TOKEN)当我在本地运行它时,代码运行得非常好,但是在使用heroku时显示了连接错误。
我还添加了“Heroku-postgres”作为补充,但它仍然不起作用?请分享相同的解决方案。
(预先谢谢:)
发布于 2020-12-27 13:03:14
client.pg_con = await asyncpg.create_pool(DATABASE_URL) #db url goes here添加Postgres时,Heroku将向应用程序添加一个环境变量。包含数据库url的值。你得拿回那个。类似于:
import os
DATABASE_URL = os.environ.get("ENV_VAR_NAME_HERE", None)@ŁukaszKwieciński我不想将数据保存在heroku数据库中,我使用postgres的默认服务器,即Ł保存数据。
您的Heroku应用程序不附带数据库。保存在Heroku应用程序上的任何内容都会被删除,请参阅这里。在您的Heroku应用程序中没有“默认的postgres服务器”。这就是为什么你要在你的应用程序中添加一个(第三方),作为数据库: postgres插件。
https://stackoverflow.com/questions/65463945
复制相似问题