36
psql --version
psql (PostgreSQL) 9.4.1

rails -v
Rails 4.2.0

I added a jsonb column through migration like that

class AddPreferencesToUsers < ActiveRecord::Migration
  def change
    add_column :users, :preferences, :jsonb, null: false, default: '{}'
    add_index :users, :preferences, using: :gin
  end
end

I get this error :

PG::UndefinedObject: ERROR:  type "jsonb" does not exist
LINE 1: SELECT 'jsonb'::regtype::oid

any help ?

4

1 回答 1

69

环顾四周后,通过运行正确的命令,我发现我的 postgresql 版本不是 9.4

postgres=# SHOW SERVER_VERSION;
server_version 
----------------
9.1

所以我只需将我的 postgresql 升级到 9.4。

顺便说一句,我按照这篇文章进行了升级,我发现这非常方便。

现在 :

postgres=# SHOW SERVER_VERSION;
 server_version 
----------------
 9.4.1

希望这对处于相同情况的人有所帮助。

于 2015-04-02T22:00:24.507 回答