obj = Object.new if obj.respond_to?("talk") obj.talk else puts "Sorry, object can't talk!" end
print "Search for: " request = gets.chomp if request == "writer" puts book.writer elsif request == "press" puts book.press elseif request == "date" puts book.date ......
以上方法可用send方法代替
request = gets.chomp if book.respond_to?(request) puts book.send(request) else puts "Input error" end
发表评论
-
使用 Capistrano 对rails app进行快速部署
2011-02-23 15:05 1845仅转载了,还没有用过,如果有问题可留言,大家一起讨论 在进行 ... -
ruby进行web serveice的方法
2011-02-15 14:37 878require 'soap/wsdlDriver' #url ... -
友好的登录系统
2011-01-28 10:54 728友好的登录系统 按照目前的代码,如果管理员尝试在未登录的状态下 ... -
第三版
2011-01-27 15:36 0view格式化价格 <%= number_to_curr ... -
用户操作数据库记录
2011-01-25 15:16 902今天我们看看怎样在数据库记录用户操作 db/migrate/0 ... -
rails 路由
2011-01-25 14:17 11974 正则路由 Rails支持 ... -
rails 验证自定义方法
2011-01-25 11:37 1616可以自定义validate(), 这个方法在每次保存数据时都会 ... -
flash-notice自动消失
2011-01-25 11:12 1487flash 提示的自动消失: <body onloa ... -
密码加密和解密
2011-01-25 11:11 1252two way crypt: #http://crypt. ... -
开发环境页面直接调试
2011-01-25 11:06 711#首先,在layout里边的合适地方添加debug,并且使 ... -
对静态页面进行缓存
2011-01-24 14:35 980对于静态站点我们可以利用Rails的cache来管理,如在co ... -
rvm部署rails3和ruby192
2011-01-21 10:39 11251. Installing RVM $ sudo gem ... -
rails要理解
2011-01-18 10:57 669清单3 module Dictionary ... -
rails 加载不同插件设置
2010-12-31 14:49 422config.plugins = [ :all ] co ... -
参考rails 下拉
2010-12-31 14:47 719对于多数的model的select列表,我都会用model属性 ... -
自定义form提示
2010-12-31 10:53 748自定义form错误提示 application_contro ... -
提高rails开发模式下静态页加载速度
2010-12-31 10:44 909http://github.com/thedarkone/ra ... -
rails 连接多个数据库
2010-12-30 10:31 818首先在database.yml中加入以下代码,其中cg_clo ... -
瘦controller,富model
2010-12-28 14:02 790----先看这么一段rhtml代码:渲染模板中加入了这么多的逻 ... -
rake 命令一览
2010-12-28 11:21 1049rake db:abort_if_pending_migr ...
相关推荐
send(before_method, *args) if respond_to?(before_method) original_method.bind(self).call(*args) end end end ``` 在这个实现中,`instance_method`用于获取原始方法的未绑定版本,`define_method`则用于...
创业板:铁DSL 作者:Rob Morris @ ... 它类似于标准库中的 BasicObject,但具有诸如 #respond_to? 和 #send 是任何真正的 DSL 构建工作所需的。 您可以使用 DslBuilder 或任何其他类作为 DSL 系统的基础。 在任何情况
这个`export_csv`方法从数据库中获取所有用户,然后通过`respond_to`根据请求的格式(在这种情况下是CSV)生成并发送数据。`render_to_string`用于将视图模板渲染成字符串,`send_data`则将这个字符串作为CSV文件...
- **动态方法调用**:通过`send`和`respond_to?`方法实现动态方法调用。 - **代码生成**:使用`eval`函数在运行时生成代码。 - **动态类和方法定义**:使用`class_eval`方法动态定义类和方法。 #### 3.3 并发编程 -...
- **Object#respond_to?**:检查是否可以调用某个方法。 - **Object#method**:获取方法对象。 - **Object#class_eval**:在类的上下文中执行代码。 - **Object#instance_eval**:在对象的上下文中执行代码。 #### ...
Ruby有一些特殊的类和方法,如`Object`类是所有类的基类,`Kernel`类包含常用的基本函数。 **3.5 类变量与类方法** 类变量以`@@`开头,可在所有实例间共享;类方法则使用`self`关键字定义: ```ruby class ...
TelegramCliWrapper用法下载、安装telegram-cli并以守护进程模式运行telegram-cli -k tg-server.pub -d -P 2392 --json telegram = TelegramCliWrapper . new port : 2392 , host : 'localhost'telegram . ...