version: Rails 4.1
8 Active Record and Referential Integrity 相关的完整性
Active Record 一直要求的是把
智能化放在你的模型中, 而不是数据库中. 同样地, 类似于
触发器或者
外键限制的特征不能被过度使用, 这样会把一些智能化放回至数据库中.
?
类似于 validates :foreign_key, uniqueness :true 的验证是一种方式, ?用在模型中能够保持数据的完整性. 属性 :dependent 在关联性上允许模型自动化地来销毁子对象, 是在当父对象被销毁的时候. 就如同那些在应用级的操作, 这些不能够保证相关的完整性, 因此有些人在数据库中用外键的限制来扩展
他们.
?
虽然 Active Record 没有直接在执行这些特征时, 提供任何工具, execute 方法能够被用来执行任意的SQL. 你也可以使用一个 gem 类似于?foreigner?, 用来增加Active Record 的外键支持(包括支持输出外键到 db/schema.rb).
?
original url:
class="Apple-converted-space">?http://guides.rubyonrails.org/migrations.html#active-record-and-referential-integrity
?