RubyonRails最佳实践——为共享布局创建一个Pages控制器



构建Rails应用程序半静态网页的标准方法是什么?

我来自LAMP背景,传统上我会有这样的页面:

about.php
index.php
common/
    header.php
    footer.php
    scripts.php
    (etc)
sign-up.php
scripts/
    jQuery.js
    etc
styles/
    main.css
(etc)

在这些文件中,会有一个用于页眉、页脚等的php include。

我应该生成一个名为Pages的控制器吗?

要直接回答您的问题:不要为共享布局创建控制器。。。但请遵循以下建议:

1.about.php, index.php, sign-up.php:

aboutindex动作可以收集在一个控制器中,通常我将其命名为Static

因此,从逻辑上讲,视图将在/app/views/static/

对于sign_up,这将取决于您的选择:您是否希望它坚持您的User模型。一般情况下,它会进入一些Registration控制器。

2.common/ header.php, footer.php, scripts.php将变为:

layouts/_header.html.erb, _footer.html.erb, _scripts.html.erb+您应该创建一个包含这些部分的布局。

3.scripts/jQuery.jsstyles/main.css将转到/public/javascripts/public/stylesheets(至少对于Rails 3.0.x)

您要查找的是Layouts。从本质上讲,您在/app/views/layouts中定义了一个布局(默认为application.html.erb),它是所有页面内容的"包装器"。此布局可以包括您可能需要的任何其他文件,并且可以由每个单独的视图动态修改。你可以在这里阅读官方教程。

这个R.Bates的railscast演示了您所需要的一切!

相关内容

  • 没有找到相关文章

最新更新