下面的两个部分都是表格的元素,并且具有相同的结构。所以我希望首先合并这两个部分,然后将它们渲染到我的ajax调用中。这可能吗?
def refreshprojects
@projects = Project.get(params[:username])
render :partial => "project.elements.data", :locals => {:projects=>@projects }
render :partial => "project.shared.elements.data", :locals => {:projects=>@projects_shared }
end
答案 0 :(得分:1)
一种简单的方法是创建另一个视图refreshprojects
,然后在其中呈现两个部分。
然后你会将refreshprojects
呈现给你的ajax电话。
答案 1 :(得分:1)
考虑到@projects和@shared_projects是数组,你可以将它们组合成一个数组到一个部分而不是单独执行。
render:partial => “project.elements.data”,:locals => {:projects => @projects + @projects_shared}
如果UI的部分内容存在一些差异,您可以在视图中使用操作名称调用两个,即refreshprojects.html.erb
,并从操作中删除两行。
render:partial => “project.elements.data”,:locals => {:projects => @projects}
render:partial => “project.shared.elements.data”,:locals => {:projects => @projects_shared}