[Ror-es] Auto-relación simétrica

Diego Algorta Casamayou
Wed Feb 15 13:14:20 GMT 2006


Sergio Gil Pérez de la Manga escribió:
> El día 14/02/06, *Diego Algorta Casamayou* > escribió:
> 
>     No tengo demasiada experiencia todavía, pero creo que podrías usar un
>     filtro before_save().
> 
> 
> Por si a alguien le viene bien, éste es el código (parece que funciona 
> bien):
> 
> 
> class Contact < ActiveRecord::Base
> 
>   [validaciones y otras relaciones]
> 
>   has_and_belongs_to_many :contacts, :foreign_key => "related"
>  
>   def before_save
>     for contact in self.contacts
>       if !contact.contacts.include?(self)
>         contact.contacts << self
>         contact.save
>       end
>     end
>   end
> end

Bien ahí!.

Qué bueno haberte sido útil. :-D

Saludos,
Diego