安装pq_search并运行contrib包迁移后:
class InstallSomeContribPackages < ActiveRecord::Migration
def up
execute 'CREATE EXTENSION pg_trgm;'
execute 'CREATE EXTENSION fuzzystrmatch;'
end
def down
execute 'DROP EXTENSION pg_trgm;'
execute 'DROP EXTENSION fuzzystrmatch;'
end
end
迁移dmetaphone迁移时仍然会出错:
PG::UndefinedFunction: ERROR: function dmetaphone(text) does not exist
LINE 2: SELECT array_to_string(ARRAY(SELECT dmetaphone(unnest(rege...
答案 0 :(得分:4)
我发布了这个问题给其他任何与此斗争的人......
即使使用contrib包,我仍然需要安装fuzzystrmatch扩展。
尝试rake db:setup和rake db:test:prepare
如果不起作用,请运行它们:
在终端本地访问psql并创建扩展名:
\psql
create extension fuzzystrmatch;
在heroku上访问你的psql数据库并从终端创建扩展名:
heroku pg:psql
create extension fuzzystrmatch;
然后重新运行迁移。希望这有助于挽救别人的压力。