web-dev-qa-db-de.com

Rails und jsonb Typ "jsonb" gibt es nicht

psql --version
psql (PostgreSQL) 9.4.1

Rails -v
Rails 4.2.0

Ich habe eine jsonb-Spalte durch Migration hinzugefügt

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

Ich erhalte diesen Fehler:

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

irgendeine Hilfe ?

34
medBouzid

Nachdem ich mich umgesehen hatte, stellte ich fest, dass meine postgresql-Version nicht 9.4 ist, indem ich den richtigen Befehl ausführte

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

Also musste ich einfach mein postgresql auf 9.4 upgraden.

Übrigens habe ich diesen Artikel befolgt, um das Upgrade durchzuführen, was ich sehr praktisch fand.

Jetzt :

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

Hoffe das hilft jemandem in der gleichen Situation.

66
medBouzid