2010-11-11 5 views

Répondre

30

Cela devrait fonctionner pour vous.

t.column :population, 'integer unsigned' 
7

Juste pour ajouter encore une chose. Cela fonctionne parfaitement. Mais il faut noter que cela rendra la base de données de code de migration dépendante.

1

étape 1:

add activerecord-mysql-non signé Gemfile

# add unsigned integer support to mysql2 adapter 
gem "activerecord-mysql-unsigned", "~> 0.0.1" 

étape 2: installer des pierres précieuses

bundle install 

étape 3:

utilisation « non signé: true » dans les champs que vous aimez

t.integer :cost, unsigned: true 

refrence: http://rubydoc.info/gems/activerecord-mysql-unsigned/0.0.1/frames

+5

Soyez très prudent avec ce petit bijou si vous travaillez dans un projet existant. Cela permettra à _override_ Rails de définir ce que devrait être une primary_key pour le rendre non signé! voir ici -> https://github.com/waka/activerecord-mysql-unsigned/blob/v0.2.0/lib/activerecord-mysql-unsigned/active_record/v3/connection_adapters/abstract_mysql_adapter.rb#L7-L9 –