我正在使用JobRunner(https://github.com/bamzi/jobrunner)作为我的Golang项目的调度程序和GIn-gonic框架(我刚学习Go大约1周)。
我已经尝试过这个包,但它确实有效。问题是当我想连接到我的数据库时,我无法在日程安排功能
中访问gin上下文func ScheduleUrl() {
jobrunner.Start() // optional: jobrunner.Start(pool int, concurrent int) (10, 1)
jobrunner.Schedule("@every 20s", CheckExpiredUrl{})
}
// Job Specific Functions
type CheckExpiredUrl struct {
// filtered
}
// ReminderEmails.Run() will get triggered automatically.
func (e CheckExpiredUrl) Run() {
// Queries the DB
// Sends some email
fmt.Println("Every 20 sec Check Expired Url ")
db := c.MustGet("db").(*mgo.Database)
urls := []models.Url{}
err := db.C(models.CollectionUrl).Find(nil).Sort("-expired_at").All(&urls)
if err != nil {
c.Error(err)
}
}
我需要使用c * gin.Context
在jobrunner函数内部,以及如何做到这一点?
答案 0 :(得分:0)
您可以使用jobrunner.Now(NowDo {})并将gin上下文传递给其中