- 我的rake脚本执行起来怎么串了?
=====
哈哈,事情是这样的、我写了两个脚本,命名空间不一样,如下:
我在这里定义了两个脚本 eat.rake 和 drink.rake
内容张这个样子,然后,我运行,eat的脚本
rake eat:init
输出的结果:
我吃西瓜
没毛病,这很合理,是我想要的结果,but,我们再执行,drink.rake
rake drink:init
输出
我吃西瓜
What???????
脚本居然串了、为啥、为啥,我也是很蒙b啊,当时我想的是代码会不会有问题啊,仔细检查,没毛病啊,然后我第一感觉是没走到原来的脚本,我试着加了个打印,发现,走了这个drink的脚本,只是并没有走到drink脚本的methods的方法,莫名其妙的走到了eat脚本的methods方法
后来解决方案就是暂时改了名字,连加prvite也不行,因为方法没有命名空间的限制,除非再类里
- 带参数的rake写法
=====
设置默认值:
args.with_defaults(:y => 1)
执行时:
rake 'eat:init[1,2]'
记住一定要带’ ’ ,要不然不识别,由于第二个参数我设置了默认值,我可以只传一个参数
rake 'eat:init[1]'