快速业务通道

Ruby on Rails的动作视图纵览 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14
n_links(@user_pages) %> <hr>

看看上面的代码是不是很简单!!

布局

在模板中可以通过布局提供子模板。这就意味着RoR可以通过布局进行嵌套操作。布局提供了一个典型 网页的各种组成部分,如菜单、页脚等。下面是一个简单的关于布局的例子。

<html>
<head>
<title>Form: <%= controller.action_name %></title>
<%= stylesheet_link_tag ''scaffold'' %>
</head>
<body>
<%= @content_for_layout %>
</body>
</html>

Ruby on Rails的动作视图纵览(5)

时间:2011-11-09 天极 李宁

上面的代码是一个标准的HTML布局。最值得关注的是变量@content_for_layout。这个变量中保存了从 控制层传过来的数据。下面代码演示了如何从控制层传递数据到一个RHTML文件:

def method
@msg ="测试!"
end

下面是method.rhtml 文件中的代码:

<h1><%= @msg %></h1>

变量@content_for_layout 的内容如下:

<h1>测试!</h1>

由布局生成的HTML代码如下:

<html>
<head>
<title>Form: method</title>
<link href="/stylesheets/scaffold.css" media="screen" rel="Stylesheet" type="text/css"/>
</head>
<body>
<h1>测试!</h1>
</body>
</html>

上面的例子只是简单地演示了如何使用布局。在RoR提供的自动生成代码机制中的scaffold就是使用布 局来生成的输出文件。在下一部分将给一个简单的例子来演示如何使用模板和格式化技术。

实例

在这个例子中显示了一些被格式化的时间、字符串和数字。

下面的代码是控制层的代码:

class SayController < ApplicationController
def hello
@time=Time.now
end
end

Ruby on Rails的动作视图纵览(6)

时间:2011-11-09 天极 李宁

下面是视图层(这个文件就是一个模板)的代码:

<html>
<head>
<title>你好!</title>
</head>
<body>
<h1>现在报时:<%=@time%></h1>
</body>
</html>

现在让我们使用格式化功能:

class SayController < ApplicationController
def hello
@time=Time.now
@rule="This is a rule"
@price=123
end
end

下面在视图中使用格式化助手进行格式化:

<html>
<head>
<title>你好!</title>
</head>
<body>
<br>现在报时:<%=@time%>
<br>时间间隔:<%= distance_of_time_in_words(@time, Time.local(2006, 10, 11)) %>
<br>高亮度显示rule:<%= highlight(@rule, "rule") %>
<br>将123转换成美元:
<%= number_to_currency(@price) %>
</body>
</html>

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号