尽管已建立路线,但没有路线匹配

时间:2019-03-26 06:28:19

标签: ruby-on-rails search pg-search

我正在关注以下教程https://www.dailysmarty.com/posts/how-to-add-search-functionality-into-a-rails-api-application

在设法完成整个教程之后,我意识到没有匹配“ / search”的路线。本教程没有说明如何进行路由,因此我尝试通过创建以下内容自己做一个:

    Rails.application.routes.draw do
      resources :search, only: [:search]
    end

2 个答案:

答案 0 :(得分:2)

这不是您想要的。您需要这样的获取路线:

get '/your_route', to: 'your_controller#your_action'

因此,就您而言,搜索不是一种资源。所以我会用:

get '/search', to: 'search#search'

您可以在rails guide上找到有关路由的所有信息。

我希望这会有所帮助!

答案 1 :(得分:0)

更新

根据教程,您需要访问yoururl.com/search

在这种情况下,最好使用 @jeremie

提供的解决方案
get '/search', to: 'search#search'

这将生成

             search GET    /search(.:format)               search#search

您使用的格式不正确。

only:仅支持七个默认操作-> 索引,显示,新建,创建,编辑,更新和销毁 more...

对于自定义路线,您需要将其更改为以下内容

Rails.application.routes.draw do
  resources :search, only: [] do
    get :search, on: :collection 
  end
end

这将产生以下路线

search_search_index GET    /search/search(.:format)        search#search