2011-07-16 22 views
2

我已经设计了3个模板我想使用,但是在学习导轨之后,我想将其中的一个模板用于Web应用程序。我如何为Rails应用程序使用HTML模板?如何使用一个已经建立的导轨模板

由于MVC格式的缘故,导轨看起来不同。所以我不知道如何去把正确的文件放在正确的位置。

回答

5

this指南应该帮助你开始。

基本上,您将主结构(页眉,页脚)从模板中分离出来并放入view/layout/application.html.erb中。结构通常与此类似:

html 
    head 
    body 
    #header 

    #content 
     <%= yield %> 

    #footer 

默认情况下,每个控制器都使用它自己的文件夹查看文件。因此articles控制器的视图应位于view/articles文件夹下。并且每个动作都使用它的html文件。

yield将当前动作的视图文件插入到布局中。例如,如果你去/articles/1它会加载view/article/show.html.erb

随着rails 3.0.x的资产像样式表,图像和JS在public文件夹。 3.1使用app/assets/文件夹。

更新

是的,你有一个基地布局这是每一个网页,并且每一页上改变部分上是相同的。但是,如果需要,当然可以使用不同的布局。或者你可以重复使用相同的视图文件进行不同的操作。

如果使用相对于根的路径(例如'/stylesheets/style.css'),则不需要更改每个页面的引用。 Rails有一些不错的帮手:

stylesheet_include_tag 'stylesheet_name' 
javascript_include_tag 'script_name' 

你可以通过几个文件名,或者增加一些选项,你可以在文档中找到。我将我的样式表合并到一个application.css文件中,但如果您希望将它们分开并仅在真正需要时才加载,则可以使用yieldcontent_for的组合。在我提供的链接中有更多信息。

+0

所以它是这样的,你只有一个页面,但身体总是会根据点击链接而改变?此外,这是否意味着我必须改变对我的javascript/css文件的引用,因为位置正在改变? – DaMainBoss

+0

坦克很多。我是一个红宝石新手,所以它就像地狱一样理解布局...我仍然在网上寻找一个Web应用程序,这是开源的,所以我可以通过它(实际代码),看看它是如何完成的。非常感谢 – DaMainBoss

+0

您可能想查看railstutorial.org。这是一本描述类似twitter的应用程序开发的免费书籍。代码可以在这里找到:https://github.com/railstutorial/sample_app。另外,还有railscasts.com的来源:https://github.com/ryanb/railscasts – bassneck