Chciałbym utworzyć kolumnę unique
w skrypcie migracji Ruby on Rails. Jaki jest najlepszy sposób na zrobienie tego? Czy istnieje sposób indeksowania kolumny w tabeli?Jak utworzyć unikatową kolumnę i zindeksować ją w migracji Ruby on Rails?
Chciałbym wymusić kolumny unique
w bazie danych, a nie po prostu używać :validate_uniqueness_of
.
+1 za sugerowanie dalszego używania validates_uniqueness_of. Obsługa błędów jest znacznie czystsza przy użyciu tej metody dla kosztu pojedynczej indeksowanej kwerendy, którą sugerowałbym, aby zrobił zarówno –
Próbowałem, że to nie działa! Mógłbym wstawić dwa rekordy z column_name, które zdefiniowałem jako unikatowe! Używam Rails 2.3.4 i MySql jakieś pomysły? – Tam
Użyłem twojej drugiej sugestii używając execute: wykonaj "ALTER TABLE users ADD UNIQUE (email)" i to działa! nie jestem pewien, dlaczego ten pierwszy nie byłby zainteresowany poznaniem – Tam