gpt4 book ai didi

ruby-on-rails - Rails - 从数据库 session 中分离模型

转载 作者:行者123 更新时间:2023-12-03 15:53:16 24 4
gpt4 key购买 nike

我遇到了一个场景,在其他语言中,我会将模型对象从事务中分离出来,然后我可以随意更改它,而无需担心记录的自动更新。


  • rails 不支持附加/分离模型对象吗?
  • 什么是替代方案,只需复制对象?

  • 编辑

    设想

    我们正在从数据库中读取模型,我们希望对它们进行更改,这些更改不会在事务结束时持久保存到数据库中。在 Hibernate\JPA 等中,您分离模型(实体)并且不会保留任何更改。

    现在您可能会问为什么不使用 Model.dup?答案是我们仍然需要模型的 id,但是一旦您分配了 id,rails 就会认为这个实例现在是模型并在事务结束时更新记录。

    谢谢

    最佳答案

    您可以完全更改 Rails 模型实例属性,而无需保留更改。

    couple of methods to change model attributes ,其中一些会自动将更改持久化到数据库,而另一些只会更改内存中实例的属性值。

    您可能想尝试使用 #assign_attributes #<attribute>= 从上面的列表中。
    只有在显式调用 #save 之后之后,更改将保存到数据库中。

    关于ruby-on-rails - Rails - 从数据库 session 中分离模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49062404/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com