首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >被忽略的rails :dependent=>:destroy

被忽略的rails :dependent=>:destroy
EN

Stack Overflow用户
提问于 2010-08-05 10:22:44
回答 1查看 482关注 0票数 2

我的关联选项似乎未得到遵守。

代码语言:javascript
运行
复制
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

我知道在使用:through:dependent=>:destroy会被忽略,但我应该能够在join模型上使用它,对吗?

EN

Stack Overflow用户

发布于 2010-08-06 03:26:17

试一试

代码语言:javascript
运行
复制
  class ClassRoom < ActiveRecord::Base 
  def before_destroy
    self.class_assignments.destroy_all
  end

person也是如此

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3411316

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档