- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下模型关联:
class Slider < ActiveRecord::Base
has_one :featured_happening, :as => :featured_item, :dependent => :destroy
before_destroy :destroy_featured_happening
after_create :create_featured_happening
end
class FeaturedHappening < ActiveRecord::Base
belongs_to :featured_item, :polymorphic => true
end
Slider
对象我认为
dependent => :destroy
会自动销毁
featured_item
但事实并非如此。
def destroy
slider = Slider.find(params[:id])
slider.delete
render(:status => :ok, :nothing => true )
end
before_destroy
进行回调手动删除
featured_item
当一个 slider 对象被销毁并且没有被调用时。
featured_item
删除 slider 对象时要删除吗?使用 Rails 3.2。
最佳答案
您刚刚观察到 delete
之间的区别和 destroy
.在您的 Controller 中,您调用
slider.delete
DELETE
但不会调用任何回调。这就是为什么在正常情况下你想使用
destroy
反而。它将获取对象(如有必要),调用包括递归销毁在内的回调,然后才从数据库中删除对象。
关于ruby-on-rails - before_destroy 和依赖销毁不触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9866267/
如果有 child ,我正在努力防止记录被破坏。 class Submission :destroy before_destroy :check_for_payments def quoted
我有以下模型关联: class Slider :featured_item, :dependent => :destroy before_destroy :destroy_featured_
我有一个简单的 User & Account 模型。如果帐户附加了用户,我想防止删除该帐户。我创建了一个 User 和一个 Account 并将它们关联起来。然后,我在控制台执行 Account.fi
我有以下内容,它删除了一个垃圾箱以及与其相关的所有内容。它很棒而且功能齐全; 型号箱 class Bin :destroy before_destroy :mod_newtweets
我正在尝试防止从数据库中删除模型并且几乎遵循此 guide (请参阅 Rails 4 一书中的 9.2.5.3 用 before_destroy 锻炼你的偏执狂)。 我有一个简单的模型: class
我有一个学生,他有很多类(class)。在 student#update 操作和表单中,我接受 course_ids 列表。当该列表更改时,我想调用某个函数。如果 update_attributes
我正在使用旧版 Rails 应用程序,该应用程序已随 Rails 的每个主要版本进行了认真升级,我们目前使用的是 Rails 5.1,但我无法获得 before_destroy如果验证失败,则防止删除
有没有什么办法,给定条件,取消事件记录的before_destroy回调上的对象的销毁?谢谢 最佳答案 您应该返回 false . rails 5 "取消回调 如果 before_* 回调抛出 :ab
我试着写了一个 before_destroy 回调,它应该让用户在出发时间前至少 2 小时取消预订。 这是我到目前为止写的 应用/模型/预订 class Reservation 'Stop', :f
Mongoid 有软删除的回调吗?因为 before_destory 不会被触发。 现在我想我可以使用 before_update 但它看起来不是我想要的那么清晰的解决方案并且它也没有被触发 clas
我有发货和发票。 发票属于出货 cargo 有一张发票 如果货件确实有发票,则不应删除货件。我需要在模型中进行设置,因为我使用的是 ActiveAdmin。 所以我在 shipment.rb 中这样做
嗨,我在如何测试这种情况下遇到了麻烦 模型/ list .rb before_destroy :destroyable? def destroyable? raise "Error" if phas
我正在尝试在模型上实现 before_destroy。当我关注这个时 before_destroy example我要么收到 NameError 要么最终得到一些不做 before_destroy 的
我有一个具有A(简单关联)的对象B: has_many :book_accounts, { dependent: :destroy } 我正在做before_destroy回调。我要检查并确保
我是 JavaEE 的新手,完全不知道这个问题。我尝试在 TomEE Plume 8.0.0 服务器上运行我的项目,但我就是无法让它工作。我尝试了很多不同的东西,主要是到处搜索,但我仍然对导致这个问题
我刚刚将我的应用程序从 Rails 2.3 升级到 3,我得到了一些 我的 before_create、update、save、destroy 等的弃用警告。 有谁知道如何解决这个问题? 这些是我的警
我有两个类(class): parent 和 child child : belongs_to :parent 和 家长 has_many :children, :dependent => :dest
我是一名优秀的程序员,十分优秀!