Rails指定控制器操作

时间:2013-07-10 21:39:11

标签: ruby-on-rails

我有一个文件夹views / home,其中包含Rails应用程序的初始屏幕。

对于某些用户,home.index.html.erb会显示包含工作单列表的部分内容。

换句话说,我正在从home / index.html.erb获取工作订单列表和一系列worequests - 因此,我添加了代码来将@workorders和@worequests读入家庭控制器。 / p>

这是获取工作人员的代码:

<% @workorders.notcompl.each do |workorder| %>

家庭控制器包含此代码以获取工作人员:

def index
  @workorders = Workorder.all

我想让_agentopenrequests.html.erb获取所有的worequests。 所以,我添加了以下内容来获取穿戴任务:

def index2
  @worequests = Worequest.all

但是,在从home / index.html.erb文件执行的部分内容中,如何使用index2代替index获取以下行?

  <% @worequests.notcompl.each do |worequest| %>

我应该将@worequests和@workorders放入index吗?


UPDATE1

我尝试将家庭控制器更改为:

 def index
   @workorders = Workorder.all

   respond_to do |format|
     format.html # index.html.erb
     format.json { render json: Workorders3Datatable.new(view_context) }
   end

   @worequests = Worequest.all

   respond_to do |format|
     format.html # index.html.erb
   end
 end

但是,我得到了

DoubleRenderError - Render and/or redirect were called multiple times in this action. Please note that you may only call render OR redirect, and at most once per action.

UPDATE2

在worequests文件夹而不是home中使用partial会更有意义 - 所以,worequests控制器会被使用吗?

1 个答案:

答案 0 :(得分:0)

如果所有index2都提取了一组worequests,您可以将其复制/移动到index操作。