gpt4 book ai didi

javascript - 是否有使用 tree Rails 从模型创建具有多个父项的子项

转载 作者:行者123 更新时间:2023-11-29 20:58:22 25 4
gpt4 key购买 nike

目前,我已经创建了一个组织结构,但它的一些“ child ”需要多个 parent 。这是我目前的祖先,我已经将它实现到 OrgChart

https://user-images.githubusercontent.com/16495060/34451193-918b25ae-ed51-11e7-9955-7694b0e6573f.png

我的目标与这个类似:

enter image description here

我使用的是 ancestry gem ,但我有点困惑如何使用该 gem 创建多个父级。我真的很感激任何意见或建议

最佳答案

使用外键parent_id存储节点A的ancestry gem与节点B有什么样的关系,因此parent_id中只能存储1个值

话虽这么说,你不能让一个节点直接拥有多个父节点。

然而,回到你要实现的数据结构,定义似乎并不明确。如果我从你的图中理解正确的话,它是:

  • 有一些人,假设A组和B组
  • A 组有多个用户:WAKIL、KOORDINATOR、BAGIAN
  • B 组有多个用户:PEM、INTELE、PIDANA,...
  • A组与B组有亲子关系

在这种情况下,您的实际树应该只呈现组之间的关系

Group X

Group Y

Group A

Group B

并且B组用户的定义有多个来自A组的父级将变为

Group A has_many: users
Group B has_many: users

所以从现在开始,你的模型将变成

# app/models/user.rb
class User < < ActiveRecord::Base
belongs_to :group
end

# app/models/group.rb
class Group < ActiveRecord::Base
has_ancestry
has_many :users
end

希望对您有所帮助。

关于javascript - 是否有使用 tree Rails 从模型创建具有多个父项的子项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48031720/

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