后台任务

后台任务

任务是编写应用程序时经常需要的小脚本。 这些任务可能包括为数据库植入种子、解析日志文件,甚至解析发布脚本。 Buffalo 使用了 grift 包来简化这些任务的编写。

写一个任务

任务必须都在 grifts 包中。一个简单的任务看起来如下所示:

var _ = grift.Add("hello", func(c *grift.Context) error {
  fmt.Println("Hello!")
  return nil
})

任务生成器

$ buffalo g task foo:bar

--> grifts/bar.go
// grifts/bar.go
package grifts

import (
  . "github.com/markbates/grift/grift"
)

var _ = Namespace("foo", func() {

  Desc("bar", "TODO")
  Add("bar", func(c *Context) error {
    return nil
  })

})

列出可用的任务

$ buffalo task list

Available grifts
================
buffalo task middleware    # Prints out your middleware stack
buffalo task routes        # Print out all defined routes
buffalo task secret        # Generate a cryptographically secure secret key

运行任务

可以使用buffalo task 命令在开发过程中运行任务。

$ buffalo task hello

二进制文件运行任务

生成二进制文件后,可以使用 task 子命令运行这些任务:

$ myapp task hello
本作品采用《CC 协议》,转载必须注明作者和本文链接
caoayu
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!