我有一個2.3.11 Rails應用程序,我想添加全文搜索以便能夠搜索'文章'的內容和標題。我正在使用Thinking-sphinx來達到這個目的。我只希望能夠點擊搜索link_to'/ advanced_search'(在主頁上)並且搜索表單出現,然後一旦提交搜索表單就有另一個視圖search_results.html.erb顯示匹配列表文章(S)。我無法獲取我的搜索表單和結果視圖進行渲染 - 使用思維獅身人面像沿着現有搜索
問題:我發現我真的不明白視圖是如何渲染的。我也不確定我的路由是否正確。我嘗試過不同的事情,但由於某些原因,我發現的所有例子都有所不同。
所以我有一個搜索表單/控制器/ articles_controller/advanced_search:
<% form_tag :controller => 'articles', :action => 'search', :method => 'get' do %>
<%= text_field_tag :search, params[:search], :id => 'search_field' %>
<%= submit_tag 'Search', :name => nil %>
<% end %>
我不得不顯示搜索結果的第二視圖,/controllers/articles_controller/search_results.html.erb:
<% @articles.each do |article| %>
<li><%= link_to article.name, :action => 'show', :id => article.id %></li>
<li><%= article.archived? %></li>
<% end %>
這是我的模型,我定義索引獅身人面像:
類文章<的ActiveRecord :: Base的 validates_presence_of:這裏命名 #rest驗證和關聯
define_index做 指標彙總 指標:命名 結束 結束
這是我的控制器和新的搜索動作/控制器/ articles_controller:
class ArticlesController < ApplicationController
load_and_authorize_resource
def index @articles = Article.all
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @articles }
format.json { render :json => @articles }
end
端
DEF搜索 @articles = Article.search PARAMS [:搜索]
respond_to do |format|
format.html #
format.xml { render :xml => @articles }
format.json { render :json => @articles }
end
端 端
以我的路由.rb我有這條線,這可能是不正確的,但是當我把它拿出來,我得到路由錯誤'無路線匹配「/ advance_search」與{方法=>得到}
map.connect 'advance_search', :controller => "articles, :action => search
我將不勝感激關於如何讓我的意見呈現正確,假設一切都是正確的任何想法。