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

Ruby on Rails新建自定义页面访问返回空白无HTML代码如何解决

问题原因
  • 核心原因是路由配置不匹配:你当前config/routes.rb中仅配置了根路径指向home#index,没有为MainController的index动作配置对应的路由规则,请求无法进入你编写的控制器逻辑,自然不会渲染你手动创建的index.html.erb视图文件。
  • 次要原因是Rails生成器执行异常:正常执行rails g controller main index命令会自动生成控制器、对应视图目录、视图文件、辅助类等资源,仅生成控制器大概率是命令执行时目录权限不足、Rails依赖缺失导致生成流程中断。
解决方案
  1. 优先修复路由配置
    如果你希望将该自定义页面设置为站点首页,直接修改config/routes.rb的根路由配置即可:

    Rails.application.routes.draw do
      root 'main#index'
    end
    

    如果你不需要将其设为首页,单独为main#index添加路由规则:

    Rails.application.routes.draw do
      get 'main/index'
      root 'home#index'
    end
    

    配置完成后访问对应路径(根路径或/main/index)即可正常显示你编写的页面内容。

  2. 修复Rails生成器异常(可选)

    • 检查项目目录的读写权限,确保当前操作用户有app/views目录的写入权限
    • 执行bundle install确认项目所有依赖包安装完整
    • 执行测试命令验证生成器功能:rails g controller test demo,检查是否会自动生成对应的视图文件

内容的提问来源于stack exchange,提问作者Дмитро Горецький

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 18:30:05