Rails named_scopes z połączeniami

Próbuję utworzyć named_scope, który używa złączenia, ale chociaż wygenerowany SQL wygląda poprawnie, wynikiem są śmieci. Na przykład:

class Clip < ActiveRecord::Base      
  named_scope :visible, {
    :joins => "INNER JOIN series ON series.id = clips.owner_id INNER JOIN shows on shows.id = series.show_id", 
    :conditions=>"shows.visible = 1 AND clips.owner_type = 'Series' "
  }

(Klip jest własnością serii, seria należy do pokazu, pokaz może być widoczny lub niewidoczny).

Clip.all robi:

SELECT * FROM `clips` 

Clip.visible.all robi:

SELECT * FROM `clips` INNER JOIN series ON series.id = clips.owner_id INNER JOIN shows on shows.id = series.show_id WHERE (shows.visible = 1 AND clips.owner_type = 'Series' ) 

To wygląda dobrze. Jednak wynikowa tablica modeli Clip zawiera klip z identyfikatorem, który nie znajduje się w bazie danych - zamiast tego jest wybierany identyfikator pokazu. Gdzie się mylę?

questionAnswers(2)

yourAnswerToTheQuestion