dado un modelo con default_scope para filtrar todas las entradas obsoletas:Rails: ¿Por qué está protegido con_s_sclusivo_scopio? ¿Alguna buena práctica sobre cómo usarlo?
# == Schema Information
#
# id :integer(4) not null, primary key
# user_id :integer(4) not null, primary key
# end_date :datetime
class Ticket < ActiveRecord::Base
belongs_to :user
default_scope :conditions => "tickets.end_date > NOW()"
end
Ahora quiero conseguir cualquier billete . En este caso, with_exclusive_scope es el camino a seguir, pero ¿está protegido este método? Sólo esto funciona:
Ticket.send(:with_exclusive_scope) { find(:all) }
Tipo de un truco, ¿no? Entonces, ¿cuál es la forma correcta de usar? Especialmente cuando se trata de asociaciones, se está haciendo aún peor (dado un usuario tiene muchas entradas):
Ticket.send(:with_exclusive_scope) { user.tickets.find(:all) }
Eso es lo que fea !!! - ¡No puede ser el camino de los carriles !?
http://stackoverflow.com/questions/25087336/why-is-using-the-rails-default-scope-often-recommend-against – MrYoshiji