J'ai un défaut portée sur les produits en raison de la sécurité de l'information à des contraintes.
class Product < ActiveRecord::Base
has_many :photos
default_scope where('visible = 1')
end
Dans mon associé modèle Photo, cependant, j'ai aussi de trouver des produits qui ne doit pas être visible.
class Photo < ActiveRecord::Base
belongs_to :product
end
my_photo.product
Dans d'autres cas, je peux l'utiliser non délimité , afin de contourner le default_scope, par exemple, en Product.unscoped.find_by_title('abc')
. Cependant:
Comment faire pour supprimer le champ d'application lors de l'utilisation d'associations d'un enregistrement?
my_photo.unscoped.product
n'a pas de sens en tant que my_photo ne dispose pas d'une méthode appelée unscoped
. N' my_photo.product.unscoped
sens comme my_photo.product
peut déjà être nul.