2013-04-26 146 views
1

是否有可能使用一个控制器视图,另一个控制器视图的局部视图...如何使用一个控制器视图的局部视图使用Ruby另一个控制器on Rails的

在我的情况我的控制有一个动作方法索引和具有动作方法索引的另一个控制器如下。

第一控制器:

class TemplateItemsController < ApplicationController 
def index 
@template_items = TemplateItem.order('"TemplateGroup_id"') 

respond_to do |format| 
    format.html # index.html.erb 
    format.json { render json: @template_items } 
end 
end 

在视图中,我们显示templateitems。

我的第二个控制器如下。

class EncounterController <Applicationcontoller 
def index 
end 
end 

并在视图我试图访问第二控制器视图中的第一控制程序图如下,但是我得到这个错误:

<%= render :partial => 'template_items/index', :locals => {:index=>@template_items} %>

和:

Missing partial template_items/index with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}. Searched in: * "/home/murali/April22 ROR App/app/views" * "/var/lib/gems/1.9.1/gems/twitter-bootswatch-rails-helpers-2.3.1/app/views"

我该如何解决这个问题?

回答

1

将名为template_items/_index.html.erb文件,并把它写:

<%= render :file => 'template_items/index.html.erb' %> 

现在用途:

<%= render :partial => 'template_items/index', :locals => {:index=>@template_items} %> 

它应该工作。

+0

与上面相同的错误我提到过,我看到了你建议的帖子,但它对我没有帮助 – Muralikrishna 2013-04-26 07:33:33

+0

缺少部分/ template_items/index {:locale => [:en],:formats => [:html], :handlers => [:erb,:builder,:coffee]}。搜索: *“/ home/murali/April22 ROR App/app/views” *“/var/lib/gems/1.9.1/gems/twitter-bootswatch-rails-helpers-2.3.1/app/views “ – Muralikrishna 2013-04-26 07:34:45

+0

编辑我的答案有一个尝试,让我知道。 – user2321302 2013-04-26 07:41:37

2

错误清楚地表明您没有_index部分在app/views/template_items

+0

我的问题是如何使用一个控制器视图作为另一个控制器视图的局部视图.. – Muralikrishna 2013-04-26 07:38:46

+0

创建文件夹中的部分文件,并尝试你会得到结果。 – 2013-04-26 07:43:47

0

实际上,partials被保存为_index.html.erb,而在您的views/template_items中,它是index.html.erb,所以它说部分丢失了。

相关问题