我的关联选项似乎没有得到兑现。
class ClassRoom < ActiveRecord::Base
has_many :class_assignments, :dependent => :destroy
has_many :people, :through=>:class_assignments
class Person < ActiveRecord::Base
has_many :class_assignments, :dependent => :destroy
has_many :class_rooms, :through=>:class_assignments
class ClassAssignment < ActiveRecord::Base
belongs_to :person
belongs_to :class_room
也就是说,当一个人或一个教室被删除时,连接表/模型中的记录也应该被删除。
但是,ClassRoom.last.destroy破坏了ClassRoom,但没有任何关联的ClassAssignments。
我知道在使用:dependent=>:destroy时会被忽略:through,但我应该可以在连接模型上使用它吧?