2012-10-10 83 views
0

我覺得這是一個很簡單的問題,我可能只是繞了不正確的,因爲我是新來的軌道,但這裏有雲......導軌 - 產生部分的佈局

什麼我想要做的是使用yield來渲染我的應用程序佈局中的部分視圖的結果。我在頁面的頂部有一個搜索欄,我希望結果顯示在佈局的良率中。再次,我不確定這是否是正確的方法,如果不是,請讓我知道最好的方法。

現在,當我嘗試在我的頁面上使用搜索時,出現「缺少模板事件/搜索」錯誤。如果我添加以下代碼到控制器它得到所有的信息正確,但在應用佈局不渲染,它只是顯示部分:

render :partial => "events/search_results" 

下面是相關的部分控制器的樣子:

layout "application" 

def search 
    @events = Event.search params[:search] 
end 

這裏是應用程序佈局(請原諒的格式,我試圖使它易於閱讀):

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <title>XXXXXXX</title> 
    <!--[if lt IE 9]> <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"type="text/javascript"></script> <![endif]--> 
    <%= stylesheet_link_tag "application", :media => "all" %> 
    <%= javascript_include_tag "application" %> 
    <%= csrf_meta_tags %> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
</head> 
<body> 
    <div class="navbar navbar-top"> 
    <div class="navbar-inner"> 
    <div class="container"> 
      <%= render :partial => "events/search" %> 
    </div> 
    </div> 
    </div> 

<div class="container-fluid"> 
    <div class="row-fluid"> 
      <div class="span1"> 
      </br> 
       <div class="well well-small"> 
        <center><h3>Filters</h3></center> </br> 
        <%= render :partial => "events/left_severity_filter" %> 
        <%= render :partial => "events/left_date_filter" %> 
       </div> 
      </div> 

     <div class="span8"> 
         <%= yield %> 
        </div> 
     <div class="span3"> 
         <%= render :partial => "events/right_filter" % 
     </div> 
    </div> 
</div> 

任何幫助將不勝感激。謝謝。

+0

你還可以發佈你的應用程序佈局嗎? – MrTheWalrus

回答

0

您在視圖中沒有events/search.html.erb模板。創建該視圖模板,它將顯示在yield所在的位置。

+0

完美的工作!萬分感謝! – CookieEmpire