150 votes

Les Rails de la Migration: suppression de la contrainte

J'ai une table dans une application Rails qui (dans le schéma.rb) ressemble à:

create_table "users", :force => true do |t|
   t.string "name", :null=>false
   t.string "address", :null=>false
end

Je voudrais écrire un rails de la migration à autoriser les valeurs null pour le champ d'adresse. c'est à dire après la migration, le tableau ressemble à ceci:

create_table "users", :force => true do |t|
   t.string "name", :null=>false
   t.string "address"
end

Que dois-je faire pour supprimer la contrainte?

304voto

deepak Points 604

pour supprimer les non-nulle contrainte peut utiliser change_column_null

183voto

Paul Sturgess Points 1465

Pas sûr que vous vous appelez t.address? De toute façon... je voudrais utiliser change_column comme

change_column :users, :address, :string, :null => true

Docs... http://apidock.com/rails/ActiveRecord/ConnectionAdapters/SchemaStatements/change_column

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X