2013-12-19 62 views
7

在Rails 3的作品以下遷移:使用PostgreSQL JSON列類型使用Rails 3

class CreateUserActions < ActiveRecord::Migration 
    def up 
    create_table :user_actions do |t| 
     t.datetime :time 
     t.integer :user_id 
     t.text  :action 
     t.column :details, :json 
     t.timestamps 
    end 
    end 

    def down 
    drop_table 'user_actions' 
    end 
end 

...但schema.rb現在不完整的報告

# Could not dump table "user_actions" because of following StandardError 
# Unknown type 'json' for column 'details' 

所以rake db:reset將無法​​創建user_actions表。

回答

8

來源:https://github.com/diogob/activerecord-postgres-hstore只設置在application.rb中如下:

config.active_record.schema_format = :sql 

現在structure.sql將被用來代替schema.rb與rake db:resetrake db:prepare從頭開始創建數據庫,將具體到Postgres的。

+0

不錯!我甚至不知道這是可能的。 – tyler

相關問題