路由错误 没有与 [GET] "/index"匹配的路由



我是Rails的新手。当我尝试访问 http://localhost:3000/index 时,我遇到了以下路由错误。

No route matches [GET] "/index"
Rails.root: /Users/[...]/taskleaf
Routes
Helper  HTTP Verb   Path                Controller#Action
root_path   GET     /                   tasks#index
tasks_path  GET     /tasks(.:format)    tasks#index
POST    /tasks(.:format)    tasks#create
[...]

这是我的route.rb文件的内容:

Rails.application.routes.draw do
root to: 'tasks#index'
resources :tasks
end

如果您能帮助我,我将不胜感激...

从您提供的内容中,尝试将其更改为"/"或"/tasks/index",然后您可能会得到所需的内容。

或者,将此代码添加到 routes.rb 文件get '/index', to: 'tasks#index'中,这会/index路径定向到任务控制器中的索引操作

以下是 Rails 路由的工作原理:当您请求"/index"时,它会尝试在您的 routes.rb 文件中查找 #index 路由,该文件不存在,因为索引操作位于您的"任务"控制器中(从我从您的代码中看到(。在代码中,您将根页面("/"(定义为"/tasks/index"(尝试访问"/"和"/tasks/index">,它们应该是相同的(。

请记住,每当您看到路由错误时,很可能您没有在 routes.rb 文件中定义路由

如果有任何进一步的错误/问题,请随时尝试并在此处更新。

干杯:)

最新更新