【问题标题】:specify database adapter on Heroku在 Heroku 上指定数据库适配器
【发布时间】:2014-12-17 09:53:53
【问题描述】:

我正在使用pgcrypto gem 来加密数据库某些列中的数据,但为了让这个 gem 工作,我必须在 database.yml 文件中指定 pgcrypto 作为适配器。我知道 Heroku 忽略此文件并在将应用程序推送到 Heroku 服务器时生成自己的文件,该服务器使用默认的 postgresql 适配器。有人知道是否可以使用配置变量覆盖adapter 值吗?

【问题讨论】:

    标签: ruby-on-rails postgresql heroku pgcrypto


    【解决方案1】:

    最终找到了解决方案,这恰好是一个非常简单的解决方案 - 我只需要替换 Heroku 的数据库 URL 变量中的第一个标记,而不是

    postgres://username:password@host:port/dbname

    我用

    pgcrypto://username:password@host:port/dbname

    【讨论】:

      【解决方案2】:

      您可以手动创建数据库连接

      `ActiveRecord::Base.establish_connection(config)
      

      您也可以使用混合在每个模型的基础上执行此操作。

      更多信息在这里Understanding how establish_connection works in ActiveRecord

      【讨论】:

      • 感谢您的回复。我考虑过这一点,但真的不想为每个模型指定所有连接属性,因为我只关心一个特定的设置 - 适配器。
      猜你喜欢
      • 2015-11-26
      • 2013-01-09
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 2014-01-01
      • 2014-06-13
      • 1970-01-01
      相关资源
      最近更新 更多