我注意到开发应用程序的奇怪事情Spree
(我正在使用 Spree 1.3.2):
Spree 使用名为Zone
. Zone
与 相关联zone_members
,如下所示:
has_many :zone_members, :dependent => :destroy, :class_name => "Spree::ZoneMember"
奇怪的部分从这里开始,在 rails 控制台中:
zone = Spree::Zone.first
zone.zone_members.empty?
# => true
zone.zone_members
# => []
zone.zone_members.reload.empty?
# => false
zone.zone_members
# => [#<Spree::ZoneMember id: 4914820, zoneable_id: 13, zoneable_type: ...
有趣的是,Spree 1.3.3 中并没有出现这个问题。除了 Spree,我还使用 Rails 3.2.14(或 Rails 3.2.13 - 结果相同)和 Ruby 1.9.3。有人知道为什么会这样吗?