Рельсы named_scopes с соединениями

Я пытаюсь создать named_scope, который использует соединение, но хотя сгенерированный SQL выглядит правильно, результат - мусор. Например:

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' "
  }

(Клип принадлежит серии, серия принадлежит шоу, шоу может быть видимым или невидимым).

Clip.all делает:

SELECT * FROM `clips` 

Clip.visible.all делает:

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' ) 

Это выглядит хорошо. Но получившийся массив моделей Clip включает в себя Clip с идентификатором, которого нет в базе данных - вместо этого он взял идентификатор шоу. Куда я иду не так?

Ответы на вопрос(2)

Ваш ответ на вопрос