自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Rails方法send調(diào)用參數(shù)

開發(fā) 開發(fā)工具
Rails方法send一般情況下都是被我們用來(lái)調(diào)用參數(shù)指定的方法。不過(guò)在執(zhí)行之前我們必須要一個(gè)方法符號(hào)作為參數(shù)。

Rails中有許多方法值得我們?cè)趯W(xué)習(xí)的過(guò)程中去深入探討。那么在這里我們將會(huì)為大家奉獻(xiàn)上有關(guān)Rails方法send的相關(guān)應(yīng)用,希望對(duì)大家有所幫助。#t#

可以使用send方法來(lái)調(diào)用參數(shù)指定的方法:

  1. name = "Fred"   
  2. puts( name.send( :reverse ) ) #=> derF   
  3. puts( name.send( :upcase ) ) #=> FRED   
  4. name = "Fred" puts( name.send
    ( :reverse ) ) #=
    > derF puts
    ( name.send( :upcase ) ) #=
    > FRED 

盡管文檔規(guī)定Rails方法send必須需要一個(gè)方法符號(hào)作為參數(shù),但是也可以直接使用一個(gè)字符串作為參數(shù),或者,為了保持一致,也可以使用to_sym進(jìn)行方法名稱進(jìn)行相應(yīng)的轉(zhuǎn)換后調(diào)用:

  1. name = MyString.new( gets() ) 
    # 輸入upcase   
  2. methodname = gets().chomp.to_sym
     #
    <= to_sym 并非必需,輸入upcase   
  3. puts name.send(methodname) #=>UPCASE   
  4. name = MyString.new( gets() ) 
    # 輸入upcase 
    methodname = gets().chomp.to_sym 
    #
    <= to_sym 并非必需,輸入upcase 
    puts name.send(methodname) #=
    >UPCASE 

下面的這個(gè)例子顯示在運(yùn)行狀態(tài)中通過(guò)Rails方法send動(dòng)態(tài)地執(zhí)行指定的方法:

  1. class MyString < String   
  2. def initialize( aStr )   
  3. super aStr   
  4. end   
  5. def show   
  6. puts self   
  7. end   
  8. def rev   
  9. puts self.reverse   
  10. end   
  11. end   
  12. print("Enter your name: ") #<= Enter: Fred   
  13. name = MyString.new( gets() )   
  14. print("Enter a method name: " ) #<= Enter: rev   
  15. methodname = gets().chomp.to_sym   
  16. puts( name.send(methodname) ) #=> derF   
  17. class MyString < String def initialize( aStr )
     super aStr end def show puts self end def
     rev puts self.reverse end end print("Enter 
    your name: ") #
    <= Enter: Fred name = MyString
    .new( gets() ) print("Enter a method name: " )
     #
    <= Enter: rev methodname = gets().chomp.to_sym
     puts( name.send(methodname) ) #=
    > derF 

回憶一下上面使用define_method來(lái)創(chuàng)建Rails方法send的例子,傳遞了方法的名稱m,還為要?jiǎng)?chuàng)建的新方法傳遞了一個(gè)代碼塊@block

責(zé)任編輯:曹凱 來(lái)源: 博客園
相關(guān)推薦

2009-12-17 15:56:34

Rails參數(shù)bind

2009-12-17 15:29:00

Rails方法exte

2022-01-06 06:58:19

Java 語(yǔ)言 Java 基礎(chǔ)

2009-12-16 17:24:26

Ruby on Rai

2009-12-17 11:14:50

Ruby on Rai

2009-08-13 09:47:57

調(diào)用JSP EL表達(dá)式帶參數(shù)方法

2009-07-23 13:35:33

Ruby on Rai

2009-12-17 15:02:32

Ruby on Rai

2013-01-10 16:12:02

Ruby on Rai漏洞

2009-08-27 10:21:22

Ruby on Rai

2009-08-05 09:09:14

C#調(diào)用VC DLL接

2011-08-25 14:28:33

send中文man

2020-12-07 19:00:29

Rails

2020-10-28 21:00:38

RailsMVC命令

2010-09-25 13:13:17

tomcatJVM

2009-08-14 13:49:58

Rails中文問(wèn)題

2009-08-06 09:13:36

Ruby on Rai

2009-09-09 09:59:08

Linq調(diào)用LoadP

2009-09-09 13:18:26

Linq Submit

2015-10-14 17:27:18

性能
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)