ruby 杂记

1:arr.__send__ strategy    send动态调用方法 那个strategy方法

2:Java 不能直接传递方法,所以把简单的问题复杂化了……   ruby可以把方法块传递过去,这就是他强大的一面

3:Duck Typing (check respond_to? instead of class) 早已解耦,根本不需要中介。

4:ruby中控制循环的是: break  next ;next相当于java中的continue 是继续下层循环

5:ruby中的正则表达式:

     /^http:([^//] +)/    :【^//】的意思是值包含除了 ^后面的字符外的字符

 

  ( /^http:([^//] +)/  ).march(str)[1]      匹配的是http://linux.org  中的linux.org

 

6:ruby正则表达式学习网站:

         http://www.rubular.com/r/OC692OE7wg

7:ruby这个符号||=

    作用:有值就不赋值  无值就赋值 ep:a ||=3   a = a || 3

8:动态生成实例方法:

 ruby:class_eval{}

 

9:

respond_to :html
, :xml
, :json

  现在,我的这个controller中所有的action都支持这3种格式了,是不是比在rails2中的每个action中都写 format.html, format.xml等方便多了。观众举手发问:“如果我只想在index中接受html格式,但在show中接受json格式怎么办?”,哈 哈,Rails3也为我们想到了这个问题,respond_to 方法可以和before_filter方法一样接受only和except方法,与此同时respond_with也接受block的书写方式,这样你就可以随心所欲的定制格式了。

  好,继续往下。如果你足够细心,你就会发现以前十几行代码量的create变的只有5行了。如下

1

2

3

4

5

  def
 create


    @post
 = Post.new(params[:post
])

    flash[:notice
] = 'Post
 was successfully created.
'

 if
 @post
.save

    respond_with(@post
)

  end
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值