我正嘗試添加使用PostgreSQL HStore列。遷移不會認識上schema_search_path創建hstore擴展
由於I'm運行的多租戶應用程序(使用公寓的寶石),從來就創建了一個專門的架構hstore擴展,稱爲「shared_extensions」,因爲在這裏看到:https://github.com/influitive/apartment#installing-extensions-into-persistent-schemas][1]
我還添加了shared_extensions架構的database.yml爲:
default: &default
adapter: postgresql
encoding: unicode
pool: 5
schema_search_path: "public,shared_extensions"
但是,當我試圖運行耙分貝:遷移到添加hstore列,I'm仍然收到錯誤:
ActiveRecord::StatementInvalid: PG::UndefinedObject: ERROR: type "hstore" does not exist
這是hstore遷移代碼:
class AddAdditionalInformationsToParties < ActiveRecord::Migration
def change
add_column :parties, :additional_informations, :hstore
end
end
我不確定,但它看起來像遷移沒有認可在database.yml文件的schema_search_path。
嘿克里斯, 這部作品的樣本我創建的應用程序。 但是,我正在使用多個postgresql模式來運行多租戶應用程序。 一旦我嘗試在另一個模式上使用hstore,我會遇到同樣的錯誤。 這就是爲什麼我創造只是爲了hstore擴展名的特定的模式,然後嘗試把它放在SEARCH_PATH所有其他模式的選項來了。 –
該解決方案我正嘗試實施是一個寫在這裏: https://github.com/influitive/apartment#installing-extensions-into-persistent-schemas –