gpt4 book ai didi

ruby-on-rails - Rails 属于 Dependent Destroy

转载 作者:数据小太阳 更新时间:2023-10-29 08:33:48 24 4
gpt4 key购买 nike

检查模型关系是否正在另一个模型中使用以防止它被破坏从而产生孤儿的最佳方法是什么。

示例:我有一个 Ticket 和 TicketStatus 模型。 TicketStatus 属于Ticket。工单有_多个工单状态。

如果 TicketStatus 已分配给工单,我将无法删除它。我也想要一条错误消息。

最佳答案

最简单的回调方式:

class TicketStatus < ActiveRecord::Base
belongs_to :ticket
before_destroy :check_ticket

private

def check_ticket
if ticket != nil
errors.add_to_base("cannot delete ticket status that has a ticket")
return false
end
end
end

这会阻止它并给你一个错误。

希望这对您有所帮助!

关于ruby-on-rails - Rails 属于 Dependent Destroy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8675508/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com