Rails系列教程(9):Hello, Rails!(2)

上一篇 / 下一篇  2008-02-02 16:01:16 / 个人分类:RoR

前面说过<%=%>来生成动态内容,其实ERb还有一种很重要的方式就是<% ruby code %>,来生成动态内容,他们两者的区别在于<%%>不会返回一个值,并用字符串的形式显示出来

 

<%%>解释并运行里面的ruby code,例如:

 

<% 3.times do %>
大家好!
<% end %>

 

另外介绍一个有用的方法---“h”,了解html的朋友知道,html语言里面存在一些字符,通过简单的输入得到(这样的字符在html里面被叫做特殊字符),比如输入:,在html里面要使用"&copy;",输入空格,要使用"&nbsp;",现在有了h这个method,我们只需要输入我们想要的字符(特殊字符)它会完成转化,例如,最常用的:

<%=h(" 2006 www.xxx.com") %>

 

特殊字符表下载

 

我们继续向下面看:

前面说过View和Controller有密切的关系,所以把它们绑定成为一个component(action pack),那么下面就是有关于他们如何紧密接触的一个方面:

 

定义hello:

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

hello.rhtml

<html>

<body>

<%= @time %>

</body>

</html>

 

结果显示出时间,我们知道对于一个instance variable,它的作用域仅仅限制在class内,外部是不能够应用的,在template里面可以调用@time是因为:controller将它的instance variable注入到了对应的template中了,强调2点,第一,某个controller的instance variable只能在对于的template中访问,注意对应;第二,注入的方向是从controller到template,也就是controller中的instance variable可以在template里面访问


TAG: RoR

 

评分:0

我来说两句

我的栏目

日历

« 2024-05-05  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 22862
  • 日志数: 47
  • 建立时间: 2008-01-29
  • 更新时间: 2008-02-02

RSS订阅

Open Toolbar