Solidity
如何映射一對多
我正在處理租金協議,我在這裡遇到了一個情況
- 一個房東可以擁有多個房產
- 每個屬性都有不同的詳細資訊(屬性詳細資訊、值)
現在我想將房產詳細資訊連結到房產 ID,也想將 ID 連結到房東地址。
在一個映射中包含所有者的資訊,其中一個變數可以是一組屬性 ID,並為每個屬性 ID 創建另一個映射到其相關資訊。
struct owner{ uint[] propertyIds; uint totalarea; address[] clients; } mapping (address => owner) owners; struct property{ uint id; string location; string area; uint price; } mapping (uint=> property) properties;
或者,如果您不想為所有者儲存任何其他內容,則可以直接將地址映射到數組。
struct property{ uint id; string location; string area; uint price; } mapping (address => property[]) owners;