こんにちは私は、製品のインデックスページと製品の表示ページにのみ、ナビゲーションバー内の検索フォームを表示したいと思います。問題は、インデックスページと表示ページの両方に表示されていることですが、私がhomeをクリックしてroot_pathに移動すると、次のエラーが表示されます。Rails navbar条件付きおよび取得ルートルートに一致するルートがありません
{:action => "show"、:controller => "products"}必要なキーがありません:[:id]
どうすれば避けることができますか?これはapplication.html.erbで私のコードです:
<% if current_page?(products_path) || (product_path) %>
<div class="col-sm-3 col-md-3 pull-right">
<form class="navbar-form" role="search">
<div class="input-group">
<input type="text" class="form-control" placeholder="Search" name="search_term" id="search_term">
<div class="input-group-btn">
<button class="btn btn-default" type="submit"><i class="glyphicon glyphicon-search"></i></button>
</div>
</div>
</form>
</div>
<% end %>
エラーは正しいです。現在のページが製品か製品パスかを確認しています。 2番目のIDはIDを取得するため、エラーが発生します。あなたは、@ cemanのような現在のコントローラをチェックするだけです。 –