rails自定义rake

在使用rails做开发的时候,可以通过rake **执行一些任务,如rake db:migrate合并数据库,rake assets:precompile压缩资源文件.

可以通过以下代码查看当前项目中的所有task任务

rails new shop-app # 创建一个空白项目
cd shop-app # 进入项目目录
rake -T # 查看项目中所有的任务

在实际开发的时候可能会用到需要自己创建一些任务

rails g task shop_init # 创建一个自定义任务
# create lib/tasks/shop_init.rake,在lib/tasks目录中会生成文件
# 所有自定义的任务都放在这里
namespace :shop_init do
  # 创建一个任务
  task :hello_world  do
   p 'Hello world!'
  end
end
rake shop_init:hello_world # 执行自定义任务

通过namespace指定task的命名空间,为了区分任务的执行环境可以引入相关参数配置.可以创建多个task,在运行的时候指定名字就好

namespace shop_init: :environment do
  desc "my first rake"
  task :hello_world => :environment do
   p 'Hello world!'
  end

  desc 'secone'
  task :second => :environment do
    p '此处可以做其他事情'
  end

end
# 运行
rake -T # 可以看到刚才创建的rake,然后直接在终端可以运行
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容