用pry阅读ruby源码--以task方法为例
Posted Ruby与Go研习社
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用pry阅读ruby源码--以task方法为例相关的知识,希望对你有一定的参考价值。
rails项目中有个目录 lib/tasks,里面定义了一个rake任务:
task hello: :hello do
puts “hello”
end
看到这里的时候,是不是可能会对 task 方法产生一些兴趣?
可以在rails项目的Gemfile中加入 pry这个强大的工具,然后一步步找到这个task方法的本质。
1,在task中加入断点:
binding.pry
2,断点中用 show-method 方法
用show-method按图索骥,可以层层揭开 task 的面纱。
3, environment的作用是什么?
用来通知Rake需要加载rails环境。
参考:
http://stackoverflow.com/questions/7044714/whats-the-environment-task-in-rake
4,进一步理解 environment
http://jasonseifer.com/2010/04/06/rake-tutorial
By running the ready_for_the_day task it notices that the turn_off_alarm, groom_myself, make_coffee, and walk_dog tasks are all prerequisites of the ready_for_the_day task. Then it runs them all in the appropriate order.
以上是关于用pry阅读ruby源码--以task方法为例的主要内容,如果未能解决你的问题,请参考以下文章