You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby on Rails新手求助:如何创建/about这类单层路由?

Rails单层路由配置问题解答

当然可以在Rails中创建/about这类单层路由,完全不需要局限于home/about这种多层路径。你遇到的错误只是因为路由配置缺少了控制器和动作的指定,不是不能用单层路径。

你已经有独立的TestController,正确的路由配置应该是这样:

get '/test', to: 'test#index'

这里的test#index对应TestController中的index动作,同时要确保app/views/test/index.html.erb(或你使用的其他模板格式文件)已经创建好。

针对/about这类页面,常见的两种实现方式:

  • 独立控制器方案:创建一个PagesController,然后配置路由:
    get '/about', to: 'pages#about'
    
    接着在PagesController中添加about动作,再创建对应的视图文件app/views/pages/about.html.erb即可。
  • 静态视图直接渲染:如果页面都是静态内容,也可以不用额外写控制器动作,直接指定视图路径:
    get '/about', to: -> { render 'pages/about' }
    
    这种方式只要对应的视图文件存在,就能正常渲染页面。

你之前的错误ArgumentError: Missing :controller key on routes definition, please check your routes.,本质是Rails不知道该把/test的请求交给哪个控制器处理,补上to: '控制器#动作'的指定就能解决问题。

内容的提问来源于stack exchange,提问作者ApplesAndCode464

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 10:42:06