Ruby on rails 变量值中的内存与数据库差异

Ruby on rails 变量值中的内存与数据库差异,ruby-on-rails,Ruby On Rails,我在应用程序中设置了一个pdf附件布尔标志,我的数据库显示它设置为true。但当我的调试器加载并检查变量时,它总是显示false 这是我获取标志时生成的sql CACHE (0.0ms) SELECT `spree_products`.* FROM `spree_products` INNER JOIN `spree_variants` ON `spree_products`.`id` = `spree_variants`.`product_id` INNER JOIN `spree_lin

我在应用程序中设置了一个pdf附件布尔标志,我的数据库显示它设置为
true
。但当我的调试器加载并检查变量时,它总是显示
false

这是我获取标志时生成的
sql

CACHE (0.0ms)  SELECT  `spree_products`.* FROM `spree_products` INNER JOIN `spree_variants` ON `spree_products`.`id` = `spree_variants`.`product_id` INNER JOIN `spree_line_items` ON `spree_variants`.`id` = `spree_line_items`.`variant_id` WHERE `spree_products`.`deleted_at` IS NULL AND `spree_variants`.`deleted_at` IS NULL AND `spree_line_items`.`order_id` = 1070722790  ORDER BY spree_line_items.created_at ASC LIMIT 1  [["order_id", 1070722790]]
这是我用于上述结果的结果:

products.first.attached_pdf

这总是导致
错误
。我不知道它是从内存缓存带来数据还是什么,但现在这对我来说是相当麻烦的。为什么内存和数据库值不同?任何帮助都会很好

查询结果来自数据库查询缓存(从
cache
debug消息中可以明显看出),而不是数据库查询缓存。如果
products
是某个其他记录的关联,则您可能需要从数据库中获取以下数据:

products(true).first.attached_pdf

您可能需要添加一些代码以使其更具可解释性。您能否更具体地说明我应该发布应用程序代码的哪一部分?我的数据库正在显示更改,但在应用程序级别,布尔值没有更新。您的产品模型中是否有名为
的附加方法\u pdf
?从订单id=1070722790的spree_产品中选择所附pdf的输出是什么?