0

我刚刚发出了一个 [脚本/生成脚手架用户] 命令来生成我的文件。所有 CRUD 页面都运行良好,这很好,现在我正在尝试创建更多页面。我在 user_controller.rb 文件中创建了一个方法,如下所示:

定义登录

#废话

结尾

然后为视图创建 app/views/users/login.html.erb。当我尝试通过浏览器访问它时 [ http://localhost:3000/users/login]它给出了错误:

ActiveRecord::RecordNotFound(找不到 ID=login 的用户):app/controllers/users_controller.rb:16:in `show'

我将其解释为使用动作秀,它不将登录识别为动作。我是否缺少一些配置以使此操作起作用?我对 Rails 很陌生,所以我可能会遗漏一些微不足道的东西。谢谢!

更新 我尝试使用 [script/generate controller User] 然后在控制器中创建操作方法及其相应的视图。它似乎按预期工作。是什么使两者之间的区别以及在使用脚本/生成脚手架不可用时导致创建其他操作方法的原因是什么?

4

1 回答 1

0

您需要打开您的路由文件并将集合映射添加到用户路由。在您的情况下,该行可能会显示map.resources :users, :collection => { :login => :get }

查看http://guides.rubyonrails.org/routing.html了解有关 Rails 路线的更多信息

于 2010-07-28T00:05:34.570 回答