Hello Everyone我的rails应用程序中有一个模型'Project',它是一个REST资源。
我还有一个非REST控制器'home',其方法是'dashboard'。
我希望仪表板呈现所有项目。这意味着,我需要在Project上调用index操作。我有两种方法可以做到这一点:
1
在我的dashbaord模板中有一个link_to到Project#Index,然后同时作为两者 仪表板和索引共享相同的布局,用户可以看到项目列表。 但是,这需要额外点击。
2
由于仪表板的所有其他视图元素都位于布局文件中,因此 可以在仪表板操作中手动设置@projects实例 渲染索引模板。
这看起来似乎是一种处理事情的错误方法。
我有两个型号'Project'并说'Cookie',我想在我的仪表板中列出它们?如何尽可能以最好的方式实施它?
答案 0 :(得分:1)
class HomeController < ApplicationController
def dashboard
@projects = Project.all
@cookies = Cookie.all
end
end
在您的views / home / dashboard中,您可以根据需要代表这些集合。
如果您的views / projects /目录中有一个部分,当前在项目索引操作中用于呈现项目集合,那么您可以通过调用以下内容来在仪表板中使用该视图:
<%= render partial: 'projects/list', locals: { projects: @projects } %>
答案 1 :(得分:0)
听起来像你的ProjectController的仪表板方法,你应该调用类似
的东西projects = Project.find_all
然后在相应的视图中渲染项目。