Comme décrit par Nermin, vous essayez de demander une collection d'enfants, à partir d'une collection d'enfants.
Vous pouvez utiliser collect
de rassembler les étudiants des entreprises selon les axes suivants :
@movie.cinema.companies.collect(&:students).flatten.uniq
Mais je pense que vous feriez mieux d'ajouter une portée à votre modèle étudiant du type :
scope :for_companies, ->(_companies) {joins(:companies).where(company: _companies)}
Appelé avec Student.for_companies(@movie.cinema.companies)
Avis de non-responsabilité :non testé, mais devrait être un point de départ !