当前位置: 首页 > 知识库问答 >
问题:

尝试测试到数据库的连接

叶冥夜
2023-03-14

我正在使用Heroku,并创建了一个新的应用程序和一个Postgres空数据库设置。

我已经安装了Heroku工具带,可以登录到Heroku并成功运行以下命令:

c:\>heroku pg:info mydbname --app my-app-name
c:\>heroku pg:credentials mydbname --app my-app-name

我在这里查看activerecord选项

但是,我运气不太好。

任何Heroku/Postgres大师能帮我指明正确的方向吗?数据库为空。作为第一步,我所要做的就是成功地连接到数据库。

Ruby文件:

require 'active_record'
require 'uri'

db = URI.parse(ENV['DATABASE_URL'] || 'postgres://localhost/jade')

ActiveRecord::Base.establish_connection(
  :adapter  => db.scheme == 'postgres' ? 'postgresql' : db.scheme,
  :host     => db.host,
  :port     => db.port,
  :username => db.user,
  :password => db.password,
  :database => db.path[1..-1],
  :encoding => 'utf8'
)

共有1个答案

严兴言
2023-03-14

env['database_url']
的内容是什么?您可以使用enable user-env-compile来尝试吗

使应用程序的配置变量在构建过程中出现,允许构建时优化在更类似于运行时环境的环境中运行。这还允许使用配置变量来配置构建。

$ heroku labs:enable user-env-compile -a myapp
-----> Enabling user-env-compile for myapp... done
WARNING: This feature is experimental and may change or be removed without notice.

可能会帮助您丢失-database-url

ruby -ryaml -e "File.open('config/database.yml') { |f| puts YAML.load(f).inspect }"
development:
  adapter: postgresql
  encoding: unicode
  database: MyDb
  pool: 5
  username: meuser
  password:

另一个提示
查看Rails应用程序的根目录中是否有一个名为gemfile的文件。
查找gem'pg',否则添加它。

 类似资料:
  • 我对Windows Azure完全陌生。 我目前有一个本地db用于我的。NET应用程序。我已经创建了一个azure帐户以及相关的SQL azure数据库。 我正在添加C代码,以便将数据从本地应用程序传递到云。为了测试此功能,我添加了一个随机用户,我想将其插入Azure DB。 我使用了以下教程:http://www.windowsazure.com/en-us/develop/net/how-to

  • 我有一个Spring Boot JPA应用程序,在Consor注册为微服务: 我的申请。yml看起来像这样: 但是,当concur联系endpoint时,我的应用程序中会抛出以下: “不允许主机‘172.17.0.1’连接到此MySQL服务器”。 到底发生了什么,为什么会有连接尝试?

  • 尝试使用cmd连接SQL数据库时出错。这是我的节目。我使用jdk 6版本来编译和运行,谢谢。 错误:

  • 简介 Laravel提供了各种有用的工具,以便更容易地测试数据库驱动的应用程序。 首先, 你可以使用 assertDatabaseHas 辅助函数, 来断言数据库中是否存在与指定条件互相匹配的数据。 例如,如果我们想验证 users 数据表中是否存在 email 值为 sally@example.com的数据, 你可以安装以下方式来测试: public function testDatabase(

  • 是否可以在没有数据库连接的情况下运行我的测试?如果是,我做错了什么/错过了什么?

  • 我曾想过简单地对数据库运行一个小命令并捕获任何异常,然而,如果出现问题(例如app.config丢失或数据库服务器关闭),应用程序将花费大量时间运行此代码,然后抛出异常(大约1分钟)。我想这是由于连接超时等,但我已经摆弄了这样的属性没有任何作用。 有没有人能提供任何关于去哪里的建议?