2017-04-19 99 views
1

我想从Clojure中的Heroku外部连接到Heroku Dyno上的数据库。Heroku,Clojure - 连接到Heroku外部的数据库

从Heroku的指南,它说创建从我的应用程序没有DATABASE_URL=$(heroku config:get DATABASE_URL -a my-app) lein repl然后(System/getenv "DATABASE_URL"),看到数据库的URL是正确的连接DATABASE_URL=$(heroku config:get DATABASE_URL -a your-app) your_process

我的问题是如何从应用程序内设置DATABASE_URL。因此,我不用做DATABASE_URL=$(heroku config:get DATABASE_URL -a my-app) lein repl来连接到数据库,我只能做lein repllein run并连接。我必须将DATABASE_URL=$(heroku config:get DATABASE_URL -a my-app)放在我的应用程序中的配置文件中。如果我这样做,我也没有一个过程。这是必要的吗?

任何帮助深表感谢

+0

你是说你根本不想使用env vars?或者你尝试过'export DATABASE_URL =“$(...)'? – codefinger

回答

1

对于lein repl将运行在user.clj,在这个文件可以是目录下的开发,这将在project.clj文件被列入:source-paths代码。开发的使用是我似乎已经拿起的一个惯例(来自Untangled)。然而,user.clj的使用已经变成了lein。见Where should the file user.clj go?。您也可能需要一个开发人员配置文件。我知道我在这里有点模糊,其他人可能会做得更好 - 这是一个简单的project.clj,适用于我:https://github.com/chrismurrph/Accounting/blob/master/project.clj

lein run将运行完全不同的代码。请参阅http://www.flyingmachinestudios.com/programming/how-clojure-babies-are-made-lein-run/(或http://www.braveclojure.com/getting-started/),并注意运行的-main需要在project.clj文件中指定 - 在链接的文本中,配置/ starup代码是使用条目:main learn-a-language.important-phrases指定的。

相关问题