美文网首页
rake任务详解

rake任务详解

作者: biubiudog | 来源:发表于2019-02-20 15:23 被阅读0次
    • rake简介:
      rake的意思是ruby make, 是一个强大的代码构建工具。

    • 作用:
      1.以任务的方式创建和运行脚本。
      2.追踪和管理任务之间的依赖。
      如:migrate 任务和schema:dump任务都依赖于“connect_to_database”任务, 在migrate任务调用之前,“connect_to_database”任务会被执行。

    • rails中的rake任务
      rails预定义了大量的rake任务,在rails中,所有的rake任务都被放在rails目录下的lib/tasks目录下,以.rake作为后缀名,这些文件会自动加载到你的环境中。

    • 举例说明:
      简单:

    desc "买菜"
    task :purchaseVegetables do
      puts "买菜"
    end
    

    依赖关系(要做饭 必须先买菜)

    desc "做饭"
    task :cook  => :purchaseVegetables do
       puts "做饭"
    end
    

    调用其他任务:

    desc "今天的任务" 
    task :today do 
    Rake::Task["home:cook"].invoke 
    Rake::Task["home:laundry"].invoke 
    end 
    
    namespace :home do 
    …… 
    end 
    
    

    调用其他任务,只需要

    Rake::Task["home:cook"].invoke 
    Rake::Task["home:laundry"].invoke 
    

    注意:invoke即使循环也只会执行一次,如果需要执行n次,需要使用execute执行

    关于命名空间的声明:
    migrate任务的命名空间是db,所以用rake db:migrate来引用。

    相关文章

      网友评论

          本文标题:rake任务详解

          本文链接:https://www.haomeiwen.com/subject/jlkmdqtx.html