【发布时间】:2015-05-30 20:07:59
【问题描述】:
所以我刚刚创建了带有控制器login_controller.rb 和视图login.html.erb 的rails 4.1.2 项目。我已经编辑了我的routes.rb 并在创建控制器后删除了已经通过rails 放置的路由并添加了另一个默认的match 路由:controller(/:action(/:id))', :via => :get
当我使用rails s 运行我的服务器并打开localhost:3000/login 时,它给了我这个错误:
The action 'index' could not be found for LoginController
我不知道它为什么要寻找一个名为“索引”的动作。如果我是对的,那么 rails 在没有实际指定的情况下采取的默认操作是“索引”,所以我尝试更改我的 URL 并请求这样做:
localhost:3000/login/login
这给了我这个错误:
No route matches [GET] "/login/login"
我该如何解决这个问题?谢谢。
这是我的rake routes 输出的内容:
Prefix Verb URI Pattern Controller#Action
GET /:controller(/:action:(/:id))(.:format) :controller#:action
【问题讨论】:
-
在您的 Rails 应用程序的目录中执行
rake rutes以查看所有可用路线并添加到您的帖子中 -
我从来没有使用过这样的路线......对不起。还要检查控制器名称可能是
logins_controller.rb(复数) -
您的登录控制器中有
login操作吗? -
@inye 是的,我有它。
标签: ruby-on-rails ruby routes ruby-on-rails-4.1