我有以下路线:
create_admin_path GET /app/views/createAdmin/create_admin.html.erb(.:format) application#createAdmin
我在routes.rb
中有这个get "/app/views/createAdmin/create_admin.html.erb", to: "application#createAdmin", as: "create_admin"
我在application_controller.rb
中有这个def createAdmin
end
在视图中我有一个名为createAdmin
的文件夹,其中有一个名为create_admin.html.erb
的文件
在create_admin.html.erb
我有这样的事情:
<h1> testing is here </h1>
然而,我收到此错误消息:
没有路线匹配[GET]“/app/views/create_admin/create_admin.html.erb”
我做错了什么?
感谢您的时间
答案 0 :(得分:0)
视图必须在控制器名称和视图文件名中匹配,如果您要将路由注册到application#createAdmin
,则该文件夹必须为application/
且文件{ {1}},因为您已将动作和路线命名为驼峰,因此您的文件必须名为createAdmin
,且必须位于名为createAdmin
的文件夹中。
application/
但是,有一些事情需要补充:
无需使用ApplicationController来处理此类操作,您可以轻松创建新控制器并将其用于此目的,而不是污染ApplicationController。
在注册路线时,您不需要指定视图的完整路径作为URI,除非那具体想要做什么。
使用Ruby时使用snake case。