我正在尝试将Rails与Angularjs一起使用。 Angular将完成所有客户端工作,而Rails控制器则假设处理列出和修改信息的请求(在数据库中)。
我在views / layouts / application.html.erb中有一个简单的模板:
<!DOCTYPE html>
<html>
<head>
<title>SomeApp</title>
<%= stylesheet_link_tag "application", :media => "all" %>
<%= stylesheet_link_tag "vendors", :media => "all" %>
<%= csrf_meta_tags %>
</head>
<body>
<div id="wrapper" ng-app="app" ng-controller="AppCtrl">
<div ng-controller="SomeApprCtrl">
<%= render 'header' %>
<div ng-view=""></div>
<%= render 'footer' %>
</div>
</div><!-- End on wrapper -->
<%= javascript_include_tag "application" %>
</body>
</html>
此模板执行启动Angular所需的一切。但我需要在Rails路由中添加一些内容。我需要定义控制器和动作。说这样的话:
root :to => 'main#index'
这意味着我需要在views / main / index.html中只使用一个空方法index
和完全空的模板文件来定义控制器Main。我怎样才能避免出现这个空无用的文件?
我正在考虑使用root :to => 'application#index'
并在ApplicationController中定义空index
方法,但由于此控制器是继承所有其他控制器的基础,我不希望它们有任何废话。此方法也无法解决空index.html
模板
答案 0 :(得分:0)
虽然它是空的,但控制器实际上按惯例处理了很多。它会自动显示index.html.erb
视图,由于尚未指定布局,因此将其包装在application.html.erb
布局中。
因此,虽然文件可能很稀疏,但幕后会发生很多事情。