任務是編寫應用程式時經常需要的小指令碼。 這些任務可能包括為資料庫植入種子、解析日誌檔案,甚至解析釋出指令碼。 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 協議》,轉載必須註明作者和本文連結