的名單我有這樣的結構(數據來自DB):如何變換結構成地圖
%MyProj.Event{imgPath: ["images/1.jpg", "images/2.jpg", "images/3.jpg"], videoPath: "video/1.mpg", youTubePath: nil}
我需要將其轉換成的地圖/關鍵字列表(像這樣)的列表:
[
%{imgPath: "images/1.jpg", videoPath: nil, youTubePath: nil},
%{imgPath: "images/2.jpg", videoPath: nil, youTubePath: nil},
%{imgPath: "images/3.jpg", videoPath: nil, youTubePath: nil},
%{imgPath: nil, videoPath: "video/1.mpg", youTubePath: nil}
]
這是要被轉換和render
函數內部傳遞,其中我可以訪問結構作爲@links:
<%= render MyProj.ModulesView, "Component.html",
data: @links
%>
這裏有什麼邏輯? 'videoPath'可以是一個字符串列表還是零列表? 'youTubePath'可以是字符串還是字符串列表?那麼'imgPath'呢? – Dogbert
如果可能,你可以顯示'Component.html'嗎?生成這樣的列表對我來說看起來並不是一個好設計(看到模板代碼會使它更清晰)。 – Dogbert
@Dogbert我需要通過在我的'Component.html中的<%= for {i,id} < - Enum.with_index(@data)do%>'枚舉的格式傳遞.eex'。 'imgPath,videoPath和youTubePath'中的每一個都是'string'或'nil'。 –