En Los Carriles 3.1 RC6, dadoActiveRecord ITS: ¿Cómo se puede salir de la clase padre ámbito predeterminado
class Animal < ActiveRecord::Base
default_scope where(legs: 4)
end
El siguiente no funciona como se esperaba:
class Man < Animal
default_scope unscoped.where(legs: 2)
end
La instrucción SQL resultante se ve así:
SELECT * FROM animals WHERE legs = 4 AND legs = 2
¿Cómo puedo anular por completo el alcance predeterminado de la clase principal?
También he probado los siguientes ninguno de los cuales el trabajo:
default_scope{ unscoped.where legs: 2 }
default_scope with_exclusive_scope{ legs: 2 }
Parece que esto funciona en Rails 3.0: self.default_scoping = [] – jemminger