后台任务
后台任务
任务是编写应用程序时经常需要的小脚本。 这些任务可能包括为数据库植入种子、解析日志文件,甚至解析发布脚本。 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 协议》,转载必须注明作者和本文链接