2015-11-20 16 views
7

これまでによく似た質問がありましたが、私はこの質問を正確には見つけられませんでした。Railsのカラムをユニークに変更する

私は(MySQLを使用して)私のレールテーブルのColumn_Aを持っています。最近では、この列に一意性を強制する必要がありました。

この列を一意にするためにこの列を変更することはできますか?

私が思いついた唯一の解決策は、一時的なユニークな列を作成し、すべてをシャッフルすることです。それは痛みでしょう。

ありがとう!

+1

わからないモデルでの検証を追加し、なぜあなたは単にvalidates_uniqueness_of使用:Column_Aを中あなたのモデル? –

+1

'change_column:table_name、:column_name、:string、unique:true' –

+0

@PadmanabanGokula' validates_uniqueness'と 'unique'の違いを説明できますか?私はマイグレーションでそれを行うことができますか? –

答えて

5

シンプルな2段階のプロセス:

1:作成し、移行

change_column :table_name, :column_name, :string, unique: true 

2:

validates_uniqueness_of :column_name 
関連する問題