ActiveRecord :: StatementInvalid:PG :: DatatypeMismatch:ERROR:列的类型为integer [],但默认表达式的类型为整数Rails 4.1.1

时间:2014-05-29 18:12:31

标签: ruby-on-rails-4 postgresql-9.1

我正在使用Rails 4.1.1和pg(0.17.1)gem我在运行迁移时遇到错误

  

ActiveRecord :: StatementInvalid:PG :: DatatypeMismatch:错误:列“page_ids”的类型为integer [],但默认表达式的类型为整数

这是我的迁移代码

class CreatePages < ActiveRecord::Migration
    def change
        create_table :pages do |t|
            t.string     :name
            t.integer    :page_ids,     array: true, null: false, default: '{}'
            t.timestamps
        end
    end
end

数组:true不工作

1 个答案:

答案 0 :(得分:4)

尝试:

t.integer    :page_ids,     array: true, null: false, default: []