Si tu as bien : class Project < AR::Base has_many :project_permissions has_many :users, :through => :project_permissions has_many :companies, :through => :users end
class ProjectPermission < AR::Base belongs_to :user belongs_to :project end class Users < AR::B has_many :projects, :through => :project_permissions belongs_to :company end class Company < AR::B end Avec dans tes tables correspondantes : projects id projects_permissions user_id project_id users id company_id company id Ca devrait marcher. Maintenant voyons voir >> p.companies Company Load (0.0ms) Mysql::Error: Unknown column 'users.project_id' in 'where clause': SELECT `companies`.* FROM `companies` INNER JOIN users ON companies.id = users.company_id WHERE ((`users`.project_id = 4)) ActiveRecord::StatementInvalid: Mysql::Error: Unknown column 'users.project_id' in 'where clause': SELECT `companies`.* FROM `companies` INNER JOIN users ON companies.id = users.company_id WHERE ((`users`.project_id = 4)) Ah, tiens, oui, on dirait bien qu'il essaye de trouver l'association dans "users" plutôt que dans la table d'association, peut-être justement parce qu'il lui manque un objet AR::B pour gérer l'association justement. --~--~---------~--~----~------------~-------~--~----~ Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement envoyez un e-mail à l'adresse [email protected] -~----------~----~----~----~------~----~------~--~---
