Как я могу сделать население без знака?
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-unsigned в GemFile
# add unsigned integer support to mysql2 adapter gem "activerecord-mysql-unsigned", "~> 0.0.1"
шаг 2: установить драгоценные камни
bundle install
шаг 3:
используйте «unsigned: true» в полях, которые вам нравятся
t.integer :cost, unsigned: true
ссылка: http://rubydoc.info/gems/activerecord-mysql-unsigned/0.0.1/frames