尽管已制定路线,但没有路线匹配
No route matches although route is made
我正在学习以下教程,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
更新:
根据教程,您需要访问 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
这不是你想要的。您需要这样的获取路线:
get '/your_route', to: 'your_controller#your_action'
因此,在您的情况下,搜索不是一种资源。所以我会使用:
get '/search', to: 'search#search'
您可以在 rails guide.
上找到有关路由的所有信息
希望对您有所帮助!
我正在学习以下教程,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
更新:
根据教程,您需要访问 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
这不是你想要的。您需要这样的获取路线:
get '/your_route', to: 'your_controller#your_action'
因此,在您的情况下,搜索不是一种资源。所以我会使用:
get '/search', to: 'search#search'
您可以在 rails guide.
上找到有关路由的所有信息希望对您有所帮助!