Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql RubyonRails迁移中的unsigned int字段?_Sql_Ruby On Rails_Ruby_Activerecord_Migration - Fatal编程技术网

Sql RubyonRails迁移中的unsigned int字段?

Sql RubyonRails迁移中的unsigned int字段?,sql,ruby-on-rails,ruby,activerecord,migration,Sql,Ruby On Rails,Ruby,Activerecord,Migration,我怎样才能使人口不签名 def self.up create_table :cities do |t| t.string :name t.integer :population t.float :latitude t.float :longitude t.timestamps end end 这应该对你有用 t.column :population, 'integer unsigned' 再补充一件事。这很

我怎样才能使人口不签名

  def self.up
    create_table :cities do |t|
      t.string :name
      t.integer :population
      t.float :latitude
      t.float :longitude

      t.timestamps
    end
  end

这应该对你有用

t.column :population, 'integer unsigned'

再补充一件事。这很好用。但需要注意的是,这将使迁移代码依赖于数据库

步骤1:

将未签名的activerecord mysql添加到文件

# add unsigned integer support to mysql2 adapter
gem "activerecord-mysql-unsigned", "~> 0.0.1"
步骤2: 安装gems

bundle install
步骤3:

在您喜欢的字段中使用“unsigned:true”

t.integer :cost, unsigned: true

参考资料:

如果您在现有项目中工作,请非常小心使用此gem。这将覆盖Rails对主键应该是什么的定义,以使其未签名!请参见此处->