情報セキュリティの制約により、製品の既定のスコープがあります。
class Product < ActiveRecord::Base
has_many :photos
default_scope where('visible = 1')
end
ただし、関連付けられている Photo モデルでは、表示されてはならない製品も検索する必要があります。
class Photo < ActiveRecord::Base
belongs_to :product
end
my_photo.product
他の場合では、default_scope をバイパスするためにunscopedProduct.unscoped.find_by_title('abc')
を使用できます。でも:
レコードの関連付けを使用するときにスコープを削除するには?
my_photo.unscoped.product
my_photo には というメソッドがないため意味がありませんunscoped
。すでに nil である可能性があるため、どちらもmy_photo.product.unscoped
意味がありません。my_photo.product