Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
所以,我刚刚发现 Rails 不支持关于外键的参照完整性这一事实,我感到相当惊讶。那么,管理此问题的最佳方法是什么?是否有处理参照完整性的“rails”方式?
理想情况下,应用程序不必处理所有这些;分贝应该。我在看像外国人这样的插件。我想知道这种方法是否有一些缺点。这通常在 Rails 中如何处理?
这是 Rails ActiveRecord 的设计决策。
我认为存储过程和约束是连贯性的卑鄙和鲁莽的破坏者。不,数据库先生,你不能拥有我的业务逻辑。你的程序野心不会结出果实,你将不得不从我死去的、冰冷的面向对象的手中撬开这个逻辑。
选择单层聪明——DHH
所以答案是数据库处理的参照完整性根本不是 Rails 的方式。
您可以通过使用提供程序引用完整性
,:dependent => :restrict
在你的 has_one 和 has_many 语句上!
描述这一点以及如何在错误发生之前检查的博客
相关的 Active Record 文档