在我們的rails 3.2.12應用程序中,存在兩個變量(存儲具有相同數據結構的表的子集)返回並且需要組合以在索引視圖中呈現的情況。以@ project1和@ project2爲例。 @ project1和@ project2都有一個從project
表中檢索到的數據子集。渲染之前,需要幾件事情要做:如何結合2對象(具有相同的數據結構)並在rails 3.2.12中渲染?
1. merge @project1 and @project2 into @project
2. get rid of duplicate record in @project. like @project.uniq
3. render @project as json
對於合併,我們大概可以做@project = @project1.to_json + @project2.to_json
。那麼@project
是一個json
對象。
如何擺脫@project
中的相同記錄?我們不知道該怎麼做。
對於渲染@project,我們可以做render :json => @project in controller index (response_to do |format| format.json { render :json => @project })
?。我們可以使用相同的index.html.erb
至render
json @project
而沒有任何變化(我們在索引視圖中應用到each of @project
)?
有人可以評論上述步驟(工作與否),並闡明如何擺脫json對象中的重複記錄?
還有沒有像@project = @project1 + @project2
存在的解決方案?這可能是一個瘋狂的想象。
感謝您的幫助。
你是什麼意思「擺脫@項目中的相同記錄?」 – Fred
例如,如果項目ID 1同時位於/ @ project1和/ @ project2中,則只需要出現項目id1的一個副本,並且需要在@project中刪除另一個相同的副本。 – user938363