2011-07-11 136 views
0

我希望能夠直接路由的Rails 3字符串參數

/samplecontroller/search 

有:Q參數。我如何在rails 3中執行此操作?我現在有

match 'samplecontroller/:search' => 'samplecontroller#search' 

但所有這在耙給:路線

/samplecontroller/:search(.:format) {:action=>"search", :controller=>"samplecontroller"} 

控制器期望

def search 
    @search = Post.search(:include => [:comments]) do 
     keywords(params[:q]) 
    end 
    end 

謝謝!

回答

2

只是做

match 'samplecontroller/search' => 'samplecontroller#search' 
+0

但是,params如何傳遞? – Rio

+0

您的請求將會像'/ samplecontroller/search?q = searchquery'。 – Dogbert

0

在routes.rb中:

match 'samplecontroller/search' => 'samplecontroller#search' 

您的版本稱:搜索的是路線的參數。刪除前面的冒號告訴它從字面上匹配整個字符串。