如何在Heroku上使用postgres扩展? 以及如何处理他们的迁移?

我有一个包含pg_search和queue_classic gems的Rails应用程序。 这两个都使用PostgreSQL扩展,例如unaccent,pg_trgm和ps-something-something(对不起,不是我的开发机器,不记得了)。

我正在部署到Heroku,并且无法运行超出这些扩展的迁移

例如,

def up execute "create extension unaccent" execute "create extension pg_trgm" end 

我得到的印象是Heroku从这里支持这些https://devcenter.heroku.com/articles/full-text-search以及Heroku使用queue_classic https://github.com/ryandotsmith/queue_classic这一事实。

我一直无法找到任何解释如何在Heroku上使用这些postgres扩展的信息。 或者即使它们可用于共享数据库或仅用于专用数据库。

所以我的问题:

  1. 如何在Heroku上为我的应用程序提供这些扩展?
  2. 如何处理迁移,以便这些扩展可用于开发和测试环境,但如果Heroku限制此类执行,则不会破坏登台或生产或环境上的迁移。

真的很感激任何想法,特别是那些伴随相关信息/指示的指示。

谢谢

如果您正在使用旧的标准共享数据库计划,那么这些可能不会起作用,因此您需要查看新的共享计划或生产计划 。