ruby-on-rails - rails :dependent => destroy with conditions

标签 ruby-on-rails

假设我有狗、皮带和主人......如果我毁掉了一条皮带,我也想毁掉狗......但如果狗有主人就不会......

最佳答案

您不想在这里使用 :dependent => :destroy ,而是使用 before_destroy 回调,如下所示:

#leash.rb

before_destroy :destroy_dog

def destroy_dog
  dog.destroy unless dog.owner
end

关于ruby-on-rails - rails :dependent => destroy with conditions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15655005/

相关文章:

ruby-on-rails - 如何在 rake 任务中获取 Rails 应用程序名称?

ruby-on-rails - 是什么导致Rails 3中出现422无法处理的实体错误?

ruby-on-rails - Ruby Module NameError——顺序很重要吗?

javascript - 如何将字符串变量传递给 Morris.js 中的 labels 选项

ruby-on-rails - ArticlesController 中的 Rails ActiveRecord::InvalidForeignKey#destroy

ruby-on-rails - 未定义的局部变量或方法 `root_path'

ruby-on-rails - 无法命中数据库,通过 minitest 集成测试

ruby-on-rails - libffi.so.5 : cannot open shared object file

ruby-on-rails - 如何仅在扩展不存在时启用它?

ruby-on-rails - 检查 url 是否可以加载到 iframe 中