Ruby on Rails配置resources路由后index接口报text/html模板缺失错误
问题解决方法
你遇到的报错核心原因是Rails默认的视图文件命名和路径规则不匹配,Rails会自动按照app/views/控制器名/动作名.请求格式.模板后缀的规则查找对应模板,你的配置不符合该约定。
具体修复步骤如下:
- 在
app/views目录下新建名为shoppers的子文件夹 - 把你现有的
shoppers.html.erb文件移入这个新建的shoppers文件夹中,同时将文件重命名为index.html.erb,最终完整路径为app/views/shoppers/index.html.erb - 重启Rails服务后刷新页面即可正常访问
如果不想按照默认约定配置,也可以手动指定渲染模板,在ShoppersController的index方法中添加render 'shoppers'即可直接渲染根views目录下的shoppers.html.erb,但该写法不符合Rails约定优于配置的设计规范,不推荐使用。
内容的提问来源于stack exchange,提问作者Derek Yi
相关产品推荐
相关产品推荐

