Rails Migration: Bigint on PostgreSQL seems to be failing?

前端 未结 5 2088
一向
一向 2020-12-05 18:58

Trying to create a table with a bigint column creates a standard integer column instead. What could be going wrong? I don\'t know where to start looking.

I\'m using

相关标签:
5条回答
  • 2020-12-05 19:09

    In rails 4.2 + you can use like:

    create_table :table_name do |t|
       t.bigint :really_big_int
    end
    
    0 讨论(0)
  • 2020-12-05 19:12

    For some reason the create table doesn't like bigint. You can, however do it with add_columm using the bigint data type:

    add_column :table_name, :really_big_int, :bigint
    

    Then you don't need that limit stuff.

    0 讨论(0)
  • 2020-12-05 19:14

    This works in Rails 4

    t.column :really_big_int, :bigint
    
    0 讨论(0)
  • 2020-12-05 19:20

    I was able to create a bigint using t.column. This is useful if you want to control the column order in the table.

    create_table :table_name do |t|
      t.string :other_column
      t.column :really_big_int, :bigint
      .
      .
      t.timestamps
    end
    

    I'm using Rails 3.2.12 with pg gem version 0.15.1 (x86-mingw32).

    0 讨论(0)
  • 2020-12-05 19:24

    Rails 5.0.0.1 it works:

      def change
        create_table :huge do |t|  
          t.integer :big_bastard, limit: 8
        end
      end
    
    0 讨论(0)
提交回复
热议问题