cómo agregar una columna única a la tabla en rieles
Frecuentes
Visto 270 equipos
0
tengo mesa Y he hecho una migración y me he fijado allí add_column :articles, :hash_code, :string, :unique => true
, bollo no funciona.
¿Puedes darme alguna ayuda?
2 Respuestas
0
Según la guía
El método Active Record afirma que la inteligencia pertenece a sus modelos, no a la base de datos. Como tal, las características como los desencadenadores o las restricciones de clave externa, que empujan parte de esa inteligencia de regreso a la base de datos, no se utilizan mucho.
Las validaciones como valida :foreign_key, :uniqueness => true son una forma en que los modelos pueden imponer la integridad de los datos. La opción :dependiente en las asociaciones permite que los modelos destruyan automáticamente los objetos secundarios cuando se destruye el principal.
Entonces, todo lo que necesita hacer es validar la unicidad del atributo en su modelo y ¡eso es todo! Y si también desea agregar el índice, puede agregarlo en el archivo de migración.
Respondido el 20 de junio de 20 a las 10:06
0
:unique => true pertenece a la declaración add_index en lugar de la declaración add_column.
La sintaxis de add_index se muestra a continuación:
add_index :table_name, :column_name, :unique => true
respondido 09 mar '13, 14:03
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas ruby-on-rails database unique or haz tu propia pregunta.
debe estar en mi modelo algo como esto
validates_uniqueness_of :hash_code
? - Andrii