2015-11-20 17 views
7

Daha önce de benzer sorular sordum, ancak bu soruyu tam olarak bulamadım (belki de mümkün değil).Rails sütununu benzersiz olacak şekilde değiştirin

Rails masamda (MySQL kullanarak) bir Column_A var. Son zamanlarda, bu sütunda benzersizliği zorunlu kılmaya ihtiyacımız vardı.

Bu sütunda benzersiz olmasını sağlamak için değişiklik yapılabilir mi?

Geldiğim tek diğer çözüm, geçici bir benzersiz sütun oluşturmak ve etrafındaki her şeyi karıştırmak. Hangi acı olurdu.

Teşekkürler!

+1

emin değil Modelinizdeki doğrulama ekle, neden sadece validates_uniqueness_of kullanın: Column_A içinde senin modelin –

+1

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

+0

@PadmanabanGokula validates_uniqueness' ile' unique' arasındaki farkı açıklayabilir misiniz? Bunu bir göçle yapabilirim. –

cevap

5

Basit iki aşamalı bir işlemdir:

1: Oluşturma bir göç

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

2:

validates_uniqueness_of :column_name 
İlgili konular