我有兩個對象。一個調用EstimateItem
,另一個調用Part
(Part
類繼承自Realm的Object
類)。一個EstimateItem
可以有多個Part
s。按數組中的對象分組
class EstimateItem {
var parts: [Part]?
}
還有的EstimateItem
s的在每個實例中不同數目的Part
秒的陣列。
+--------------------------------+---------------------------------+
| EstimateItem | Parts |
+--------------------------------+---------------------------------+
| Line Item 1 - RnR WDH - Twins | Epoxy/Wood for lami |
| (single) | |
| | |
| Line Item 2 - RnR WDH - Twins | Epoxy/Wood for lami |
| (double) | |
| | |
|Line Item 3 - Install sash lock |Epoxy/Wood for lami/Sash lock|
+--------------------------------+---------------------------------+
我需要按特定的Part
對它們進行分組。它應該看起來像這樣。
我該怎麼辦呢?
我想不出辦法做到這一點,而零件是附加個別項目,所以我試圖把它們全部放在一個數組元組(part: Part, item: EstimateItem)
。
var groups = [(part: Part, item: EstimateItem)]()
for item in estimateItemsArray {
if let parts = item.parts {
for part in parts {
groups.append((part, item))
}
}
}
// Epoxy - RnR WDH - Twins (single)
// Wood for lami - RnR WDH - Twins (single)
// Epoxy - RnR WDH - Twins (double)
// Wood for lami - RnR WDH - Twins (double)
// Epoxy - RnR WDH - Twins (single)
// Wood for lami - RnR WDH - Twins (single)
// Sash lock, traditional - Install sash lock
然後對它進行分組。
但我仍然卡住了。此外,我覺得我過於複雜,我想知道是否有一個更容易,更容易做到這一點。
我可以假設你有一個所有零件和物品的數組?像'var parts:[Part]'? – luk2302
@ luk2302沒有單獨的零件陣列。有一系列名爲'estimateItemsArray'的項目。在每一個項目中,都有像你提到的一系列部件。 – Isuru