Rails没有加载application.html.erb,而是加载视图存根

时间:2009-09-03 23:12:49

标签: ruby-on-rails

我的application.html.erb是一个经典文件,其中<%= yield%>声明。如果我去domain.com/controller/action,它会产生相应目录中的视图。相反,它只是提取视图(正确的视图,但没有应用程序包装器)。 (除了应用程序之外没有其他布局)

这是我的第二个rails应用程序。另一个顺利进行,但这个问题给了我一个接一个的问题。我傻瓜和谷歌搜索,什么都没有。我甚至重新启动了webrick,虽然我没有重启apache(代理通过webrick),因为我认为这有点过分。更不用说我们托管了一些低容量的网站。

最奇怪的是,当我调用root即:domain.com时,它调用application.html.erb并生成到主视图。

我确实使用了脚手架,但我的理解是调用脚本/生成脚手架只是构建文件而不配置除路由之外的任何东西。我已经修好了。

我认为可能有助于回答问题。如果您需要更多,请告诉我。

显示布局应用程序未加载的Devel日志:

domain.com

Processing HomeController#index (for 24.20.194.187 at 2009-09-03 15:24:15) [GET]
  Parameters: {"action"=>"index", "controller"=>"home"}
  ESC[4;35;1mCompany Columns (2.6ms)ESC[0m   ESC[0mSHOW FIELDS FROM `companies`ESC[0m
  ESC[4;36;1mCompany Load (0.4ms)ESC[0m   ESC[0;1mSELECT * FROM `companies` WHERE (`companies`.`subdomain` = 'slate') LIMIT 1ESC[0m
Rendering template within layouts/application
Rendering home/index
  ESC[4;35;1mUser Columns (2.6ms)ESC[0m   ESC[0mSHOW FIELDS FROM `users`ESC[0m
  ESC[4;36;1mUser Load (0.4ms)ESC[0m   ESC[0;1mSELECT * FROM `users` WHERE (`users`.`id` = '2') LIMIT 1ESC[0m

domain.com/users

Processing UsersController#index (for 24.20.194.187 at 2009-09-03 15:24:03) [GET]
  Parameters: {"action"=>"index", "controller"=>"users"}
  ESC[4;36;1mCompany Columns (2.6ms)ESC[0m   ESC[0;1mSHOW FIELDS FROM `companies`ESC[0m
  ESC[4;35;1mCompany Load (0.4ms)ESC[0m   ESC[0mSELECT * FROM `companies` WHERE (`companies`.`subdomain` = 'slate') LIMIT 1ESC[0m
  ESC[4;36;1mUser Columns (2.7ms)ESC[0m   ESC[0;1mSHOW FIELDS FROM `users`ESC[0m
  ESC[4;35;1mUser Load (0.4ms)ESC[0m   ESC[0mSELECT * FROM `users` ESC[0m
Rendering users/index
  ESC[4;36;1mSQL (0.2ms)ESC[0m   ESC[0;1mSET NAMES 'utf8'ESC[0m
  ESC[4;35;1mSQL (0.2ms)ESC[0m   ESC[0mSET SQL_AUTO_IS_NULL=0ESC[0m

application.html.erb [已编辑的元素内容]:

哦对。不到大于。足以说明,它有html,head和body标签,<%= yield%>言。

1 个答案:

答案 0 :(得分:4)

首先确认views / layouts中的唯一文件是application.html.erb,然后仔细检查UsersController并确保删除指定布局的任何行。