2010-06-01 15 views
0

我有兩個簡單的模型,每個都有acts_as_tree,比如說部門和僱員。 我的目標是創建一個TreeView這兩款車型在組合成一個整體的樹,像這樣:如何在一個RoR中結合兩個模型acts_as_tree樹視圖?

  • 部1
    • SUBDEPARTMENT 1.1
      • 員工A
      • 員工B
    • SubDepartment 1.2
  • 部2
    • SUBDEPARTMENT 2.1
      • 僱員Ç
  • 部3
    • SUBDEPARTMENT 3.1
      • 員工d
      • 員工Ë
    • SUBDEPARTMENT 3.2

我發現這已經:Acts as Tree with Multiple Models但我怕,我可以用多一點的指針正確的方向。

謝謝!

回答

0

所以你的模式是這樣的?

Department 
    acts_as_tree #requires departments.parent_id field 
    has_many :employees 

Employee 
    belongs_to :department #requires employees.department_id field 

我只是堅持這一點,而不是試圖讓樹「知道」員工。有樹關係的唯一的東西是部門。員工屬於一個部門,但他們不是樹結構的一部分。

就編輯過程而言,當您更改部門時,您將parent_id設置爲樹中其父項的標識,而當您移動員工時,將department_id設置爲其「父」的標識。

你的實際問題是什麼?我的意思是你想要做什麼?

+0

我想要做的是從部門和員工創建樹狀視圖。不僅來自部門或員工。所以這兩個模型必須合併成一棵大樹。事實上,我確實有一個設置,你在你的答案建議,但我不知道如何擴大它兩個結合了兩個模型。 感謝您的幫助! – Menno 2010-06-02 12:49:05

+0

因此,員工可以成爲許多部門的家長? – 2010-06-03 09:15:13

相關問題