我正在关注以下教程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
答案 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