如何在Sequel遷移中創建hstore列?如何在續集遷移中創建hstore列?
Sequel.migration do
change do
add_column :logs, :geo, HStore
end
end
失敗。我需要加載擴展嗎?
如何在Sequel遷移中創建hstore列?如何在續集遷移中創建hstore列?
Sequel.migration do
change do
add_column :logs, :geo, HStore
end
end
失敗。我需要加載擴展嗎?
隨着Author's gem answered me,數據庫需要這種額外的擴展使用它之前:
CREATE EXTENSION hstore
順便說一句,正確的行是add_column:logs,:geo,:hstore#或'hstore' – MegaTux
的文檔中我找不到這個所以我要求在IRC上。
jeremyevans:method_missing的使用,允許你使用任何自定義數據庫類型
所以你可以只要擴展啓用指定json
,jsonb
:
Sequel.migration do
change do
create_table :foo do
primary_key :id
jsonb :bar
end
end
end
啓用擴展名:
Sequel.extension :pg_json
並創建一個新的紀錄:
foo = Foo.new bar: Sequel.pg_jsonb({ 'baz' => 'qux' })
我懷疑你的答案就在於這個文檔,http://sequel.jeremyevans.net/rdoc/files/doc/postgresql_rdoc.html英寸具體來說,看標題** PostgreSQL特定的數據庫類型支持** –
感謝您指向我正確的文檔頁面,但我仍然無法運行遷移。我嘗試了不同的名稱,例如:hstore,:h_store,:pg_hstore,HStore等。我已經加載了:pg_store數據庫擴展,甚至將sequel_pg和sequel-hstore gems添加到Gemfile中。試過用json數據類型,並行得通,但我更喜歡hstore。 – MegaTux
也許這是寶石中的一個錯誤。你有報告給維護者嗎? –