Varias relaciones entre dos clases

Buenas tardes a todos,

una duda que se me plantea en una aplicación que estoy implementando.
Tengo dos clases, Usuario y Concierto, en la que cada concierto está
creado por un usuario. Por lo tanto, en el modelo de concierto declaro
“belongs_to :user” y en el de usuario “has_many :concerts”, y tendré un
método “concerts” que me devolverá todos los conciertos creados por ese
usuario. Sin embargo, si ahora quiero implementar otra relación,
asistencia, en la que un usuario puede asistir a muchos conciertos, y un
concierto puede tener muchos asistentes, es decir, una relación varios a
varios, y declaro en cada modelo la sentencia “has_and_belongs_to_many”
correspondiente, no se crearía otro método “concerts” que se solaparía
con el anterior?

Muchas gracias y perdón por el trabalenguas

Un saludo

David Garcia wrote:

Buenas tardes a todos,

una duda que se me plantea en una aplicación que estoy implementando.
Tengo dos clases, Usuario y Concierto, en la que cada concierto está
creado por un usuario. Por lo tanto, en el modelo de concierto declaro
“belongs_to :user” y en el de usuario “has_many :concerts”, y tendré un
método “concerts” que me devolverá todos los conciertos creados por ese
usuario. Sin embargo, si ahora quiero implementar otra relación,
asistencia, en la que un usuario puede asistir a muchos conciertos, y un
concierto puede tener muchos asistentes, es decir, una relación varios a
varios, y declaro en cada modelo la sentencia “has_and_belongs_to_many”
correspondiente, no se crearía otro método “concerts” que se solaparía
con el anterior?

Muchas gracias y perdón por el trabalenguas

Un saludo

no creo que te sirva la relación habtm , porque seguramente en la tabla
de unión de asistencias por ejemplo, deberás guardar el # de
asistencias y con una relación habtm no podrás poner datos extras a las
llaves foraneas.

Saludos.

Debes usar la realcion tiene a traves de , o has_many through asi
crear una table de conciertos otra de usuarios y una de asistencias, es
muy facil. Si aun no sabes como me puedes preguntar