我目前正在撰写关于在Heroku上设置Wordpress的教程。现在我使用ClearDB
附加组件自动设置CLEARDB_DATABASE_URL
ENV变量。是否可以通过Heroku将ENV
变量设为DATABASE_URL
?
答案 0 :(得分:2)
无法为配置变量添加别名或从另一个变量引用配置变量。我问了一个类似的问题,这就是他们所说的:
我担心Config Variables在这方面不能互相引用 方式,因为它们是简单的名称和值的集合,没有 可用于值的插值或计算。
你可能想尝试一下 profile 文件...
答案 1 :(得分:0)
我不确定这些信息对任何人都有帮助,但以防万一:
这个问题涉及一个错误的断言。 ClearDB附加组件未设置CLEARDB_DATABASE_URL ENV变量。 ClearDB附加组件创建CLEARDB_DATABASE_URL配置变量。当应用程序启动时,将从config var创建一个ENV变量。如果你在代码库中更改了ENV变量,这两个变量是不同的,甚至可能有不同的值。
当然,在你的代码库中,你可以用ENV变量做任何你想做的事。
关于配置变量是否可以引用其他配置变量或其他ENV变量,或者反之亦然 - 我不知道。但肯定的是,这将是非常hacky,与预期用途,正确的编码实践和社会责任行为相反。
答案 2 :(得分:0)
我遇到了类似的问题-我试图在连接到2个不同的Heroku DB的管道中使用应用程序-为了使他的所有环境在代码中保持一致,我做了以下事情:
Heroku配置:
DATABASE_URL=XXXXXXXX - this was the first DB that heroku attached
HEROKU_POSTGRESQL_JADE_URL=XXXX - this was the second DB that heroku attached (the key name changes in each environment)
SECOND_DB_KEY_NAME=HEROKU_POSTGRESQL_JADE_URL
(即,在设置每个环境之后-我添加了对新密钥的引用)
第二个数据库密钥名称,如果数据库凭据刷新,则不会更改。
在代码中,然后在启动时执行以下操作:
const databaseUrlKey = process.env.SECOND_DB_KEY_NAME
process.env['SECOND_DATABASE_URL'] = process.env[databaseUrlKey]
答案 3 :(得分:0)
也许我只会说些愚蠢的事,但为什么不这样做呢?
try:
html =requests.get(url)
except:
print("no conection")
try:
soup = BS(html.content.decode('utf-8'),'html.parser')
except:
print("pasre error")
print(soup.find('div',{'class':'_3WlLe clearfix'}).get_text())
在代码中:
heroku config:set DATABASE_URL=CLEARDB_DATABASE_URL