是否可以在Propel ORM中將父級名稱字段創建爲一對多關係。Propel ORM - 與父級名稱的一對多關係
這種類型的關係用於CRM系統。
試想一下,我們有一個任務列表。所以,我們創建了一個任務#1並將其與項目相關聯。 任務#2與帳戶相關(例如創建合同)。 任務#3與Bug Tracker相關(例如修復一個bug)。 因此,我們有以下關係:
task_name | parent_name | parent_id
--------------------------------------------------
Start a project | Project | <project_id>
Create a contract | Account | <account_id>
Fix a bug | Bug Tracker | <bug_id>
是否有可能在波輪實現。如果不是,你能否推薦我另一個具有此功能的ORM。
主要目的是獲取包含所有關係值的記錄列表。
在我的例子,它應該看起來像(以JSON):
{
"Task_0":{"Id":1,"Name":"Start a project","ParentId":1,"ParentName":"Project","Project":{"Id":1,"Name":"Project-1","Tasks":{"Task_0":"*RECURSION*"}}},
"Task_1":{"Id":1,"Name":"Create a contract","ParentId":1,"ParentName":"Account","Account":{"Id":1,"Name":"Account-1","Tasks":{"Task_0":"*RECURSION*"}}},
"Task_2":{"Id":1,"Name":"Fix a bug","ParentId":1,"ParentName":"Bug","Bug":{"Id":1,"Name":"Bug-1","Tasks":{"Task_0":"*RECURSION*"}}}
}
有誰能幫我嗎?
不確定你的問題到底是什麼,'parent_name'綁定到外部的東西?爲什麼你不能創建該列? – jakerella
是的,父母的名字是外在的東西。我修改了這個問題。我認爲現在應該很清楚地理解。 – user2539253
我認爲你必須做一些特別的事情才能在Propel中完成這件事。外鍵關係未設置爲添加除parent_id之外的字段。我想這個問題是爲什麼這樣做,而不是簡單地在代碼中使用'$ task-> getParent() - > getName();' – jakerella