Zoals beschreven door Nermin probeer je een verzameling kinderen op te vragen, uit een verzameling kinderen.
Je zou collect
kunnen gebruiken om de studenten van de bedrijven te verzamelen in de trant van:
@movie.cinema.companies.collect(&:students).flatten.uniq
Maar ik denk dat je er beter aan zou doen om een scope aan je studentenmodel toe te voegen in de trant van:
scope :for_companies, ->(_companies) {joins(:companies).where(company: _companies)}
Gebeld met Student.for_companies(@movie.cinema.companies)
Disclaimer:niet getest, maar zou een startpunt moeten zijn!