似乎只要路由匹配'somecontrollername#show',就有一个视图:somecontrollername/show.html,并且控制器被定义为没有show动作,路由的获取请求会自动呈现显示视图。Rails'show'在控制器上的行为有趣的行为
有人可以解释这种行为吗?
似乎只要路由匹配'somecontrollername#show',就有一个视图:somecontrollername/show.html,并且控制器被定义为没有show动作,路由的获取请求会自动呈现显示视图。Rails'show'在控制器上的行为有趣的行为
有人可以解释这种行为吗?
这是怎么了Rails的工作。如果他们具有特定行为的路由,但是此操作未在适当的控制器中实现,则他们尝试以与操作相同的方式呈现模板。如果他们找不到这个模板,他们会抛出一个错误。
你将有一个资源路由自动路由模板展示动作,像这样:
resources :applicants # Controller for this resource can automatically serve REST requests
要删除它,在你的路由添加except: [:show]
resources :applicants, :except => [:show]
即使我的路线文件中没有'resources:somecontrollername',我也会有一个? –