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>

どんな助けでも大歓迎です。ありがとう。

4

1 に答える 1

0

events/search.html.erbビューにテンプレートがありません。このビュー テンプレートを作成すると、 の場所に表示されますyield

于 2012-10-10T15:51:57.787 に答える