en Rails 2.x puede utilizar validaciones para asegurarse de que tiene un valor único combinado de esta manera:Rails 3: Validar valores combinados
validates_uniqueness_of :husband, :scope => :wife
En la migración correspondiente que podría tener este aspecto:
add_index :family, [:husband, :wife], :unique => true
Esto aseguraría que la combinación marido/mujer sea única en la base de datos. Ahora, en Rails 3, la sintaxis de validación cambió y el atributo del alcance parece haber desaparecido. Ahora parece que:
validates :husband, :presence => true
¿Alguna idea de cómo puedo lograr la validación combinada en Rails 3? Las validaciones de Rails 2.x aún funcionan en Rails 3, así que aún puedo usar el primer ejemplo, pero parece tan "viejo", ¿hay formas mejores?
Me acaba de confirmar esta funciona en mi propia aplicación – epochwolf
Esto suena increíble y limpio y todo ... pero no funciona en mi muestra 'un proyecto modelo' lo intenté. ¿Hicieron algo especial? Usé 2 cadenas y también intenté con 2 enteros, pero las validaciones simplemente pasan. – Cimm
Estoy usando 'validates: contents,: presence => true,: uniqueness => {: scope =>: comment_thread_id,: message =>" ya se ha dicho, por favor agregue algo significativo "}' – epochwolf