2014-08-28 35 views
0

有沒有人試圖在3個表格上做一個關鍵點?3個表格爲一個關鍵點

我的情況是項目管理。

我有包含多個客戶,包含多個任務的項目。

我希望我能恢復所有級聯

Project::with('customers')->with('customers.tasks')->get() 

我已經試了好幾次,但沒有定論。

給你結果的一個想法:http://dhtmlx.com/docs/products/dhtmlxGantt/01_basic.html

我們有:產品發佈(項目)>開發(客戶端)>開發系統(任務)

每個任務都有一個開始日期和結束日期。所以我必須能夠找到自項目本身以來的這些日期(由綠色欄代表)。

如果您有任何意見讓我知道:)

+0

你可能會發現hasManyThrough會有幫助。很難確切地知道沒有看到這些表的完整模式。 – alexrussell 2014-08-28 15:49:45

+0

一個客戶可以有多個項目嗎?如果你展示你的遷移,也許它會有所幫助。 – user3158900 2014-08-28 15:54:23

+0

我的3個表(項目,客戶,任務)只包含一個id和一個名稱字段,但包含date_from和date_to的任務除外。 – thujohn 2014-08-28 15:55:39

回答

0

我認爲最好的方法是創造客戶和任務之間的數據透視表。它也會有一個project_id列。

這將使您能夠查找屬於某個客戶的所有客戶任務和所有任務。

然後,您將擁有一個項目表,並且您將能夠使用hasManyThrough查找項目的客戶/任務。我相信這也需要你爲你的customer_task表建立一個模型,但應該相當簡單。

+0

「客戶和任務之間的數據透視表」= customer_id + task_id 如果我添加project_id,就像我之前做的那樣 – thujohn 2014-08-29 08:26:19

+0

我不確定如何使它更容易,如果我將模型放在一起,是否會浪費我的時間?這個和一些關於如何使用它們的例子? – user3158900 2014-08-29 14:01:42