J'ai 3 tables de données et 2 tables de jointure connectant tout. J'essaie de trouver un moyen d'interroger les résultats en fonction de la condition que les données de la table de jointure sont les mêmes.Rails - Trouver des résultats à partir de deux tables de jointure
Pour expliquer, j'ai des tables d'utilisateurs, d'intérêts et d'événements. Ces tables sont liées par une relation HABTM (ce qui convient bien à mes besoins puisque je n'ai pas besoin de stocker d'autres champs) et jointes via deux tables de jointure. J'ai donc aussi une table UsersInterests avec (user_id, interest_id) et une table EventsInterests avec (event_id, interest_id).
Le problème survient lorsque vous essayez d'interroger tous les événements où les intérêts des utilisateurs correspondent aux intérêts des événements.
je pensais que ce serait ressembler à quelque chose comme ça ...
@events= Event.find(:all, :conditions => [@user.interests = @event.interests])
mais j'obtiens l'erreur « méthode non définie pour les intérêts nuls: NilClass », Y at-il quelque chose de mal avec ma syntaxe ou ma logique ?
Pouvez-vous s'il vous plaît montrer la méthode complète pour ce contrôleur d'action? –