gpt4 book ai didi

ruby-on-rails - Rails 外键逻辑

转载 作者:搜寻专家 更新时间:2023-10-30 20:07:02 27 4
gpt4 key购买 nike

如果我没记错的话,Rails 有自己的使用 ActiveRecord 实现的外键逻辑。这是否有助于提高性能,即您不依赖数据库来获得额外的处理逻辑或进行频繁的数据库事务?还是其他原因?

最佳答案

Rails 仍然像往常一样使用外键。只是它不强制使用外键约束

假设您在模型中设置了验证以阻止数据损坏,您可以在不使用数据库中显式外键约束的情况下获得成功。

定义约束是一种重复形式,但我更喜欢它来维护数据完整性。即使定义了 ActiveRecord 关联和验证,在迁移或批量更新等过程中仍然很容易弄乱数据结构。有许多插件可以轻松地将 FKs 定义为正常 ActiveRecord 迁移的一部分

此外,即使您不创建 FK 约束关系,您仍然可能希望至少在外键上定义一个索引,因此当您执行类似 post.comments 的操作时,您不会引起全表扫描以查找具有匹配 post_id 的所有评论(当您定义 FK 约束时,许多 DBMS 会隐式地为您完成)。

关于ruby-on-rails - Rails 外键逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1721158/

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