我对如何正确访问与某个特定模型无关的rails控制器中的操作感到困惑。默认情况下,路由文件似乎将操作名称路由到“id”。因此,如果我键入,例如/ user / login,我最终会收到一条错误消息:“无法找到具有'id'= login的用户”
在rails中访问任意操作名称的正确方法是什么?
答案 0 :(得分:1)
resource
和resources
可能并不明显。但实际上,它们往往是常用的相应路线集合的缩写,如this is what resources
adds。它们不是巨石,它们可以根据您的需求进行定制。提供选项只是一个开始,您可以提供一个块来定义此资源的自定义操作路由,如下所示:
resources :users do
get :login
end
这会根据Rails的约定添加映射到/users/login
的{{1}}路由。
See this guide了解更多详情,不要忘记运行UsersController#login
以查看您目前所拥有的内容。