gpt4 book ai didi

ruby-on-rails - Rails 同一个表的外键

转载 作者:行者123 更新时间:2023-12-04 06:19:34 25 4
gpt4 key购买 nike

我有一个包含工单的 rails 应用程序。我将从另一个系统加载工单。该系统为父工单和子工单使用一个表。

我在 workorders 表中添加了一个名为 parent_id 的字段

这是工作订单模型中的正确编码吗?

 class ParentWorkorder
belongs_to :parent, class_name => "Workorder"
belongs_to :child, class_name => "Workorder", :foreign_key => "parent_id"
end

或者你会建议不要这样做 - 而是创建一个子工作订单表?我认为这可能会使与其他系统集成变得更加困难。

任何指导将不胜感激!

最佳答案

您也可以使用 Rails 在单个表中执行此操作,就此而言,使用单个模型即可。我不明白为什么您需要通过额外的 ParentWorkorder 使您的应用程序复杂化像你做的那样的模型。我会做以下事情:

class Workorder < ActiveRecord::Base
belongs_to :parent, :class_name => "Workorder", :foreign_key => "parent_id"
has_many :children, :class_name => "Workorder", :foreign_key => "parent_id"
end

我很确定这会给你你想要的功能。

关于ruby-on-rails - Rails 同一个表的外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14370797/

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